我想知道是否有可能获得Chrome扩展程序子文件夹中所有文件的文件名列表。
谢谢!
答案 0 :(得分:2)
使用chrome.runtime.getPackageDirectoryEntry
方法获取Chrome扩展程序的DirectoryEntry
,然后使用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);
}
});
})();
});
这是一个基本示例,列出了Chrome扩展程序包中root用户的所有文件和目录的名称。如果要查询特定目录的内容,则需要先获取该条目。例如。列出_locales
目录的内容。第二个参数应该是Object实例:
directoryEntry.getDirectory('_locales', {}, function(subDirectoryEntry) {
var directoryReader = subDirectoryEntry.createReader();
// etc.. same code as in previous snippet.
});