如何获取 Chrome 扩展程序子文件夹中的文件名列表?

Eka*_*ina 2 google-chrome-extension

我想知道是否可以在 Chrome 扩展程序的子文件夹中获取所有文件的文件名列表。

谢谢!

Rob*_*b W 5

使用chrome.runtime.getPackageDirectoryEntry方法获取DirectoryEntryChrome扩展程序的a,然后使用FileSystem API查询其内容

chrome.runtime.getPackageDirectoryEntry(function(directoryEntry) {
    var directoryReader = directoryEntry.createReader();
    // List of DirectoryEntry and/or FileEntry objects.
    var filenames = [];
    (function readNext() {
        directoryReader.readEntries(function(entries) {
            if (entries.length) {
                for (var i = 0; i < entries.length; ++i) {
                    filenames.push(entries[i].name);
                }
                readNext();
            } else {
                // No more entries, so all files in the directory are known.
                // Do something, e.g. print all file names:
                console.log(filenames);
            }
        });
    })();
});
Run Code Online (Sandbox Code Playgroud)

这是一个基本示例,它列出了Chrome 扩展包中根目录的所有文件目录的名称。如果要查询特定目录的内容,则需要先获取该条目。例如,列出目录的内容_locales。第二个参数应该是 Object 实例:

directoryEntry.getDirectory('_locales', {}, function(subDirectoryEntry) {
    var directoryReader = subDirectoryEntry.createReader();
    // etc.. same code as in previous snippet.
});
Run Code Online (Sandbox Code Playgroud)