我有一个循环列出目录中的文件。它在第一级工作正常。
Folder/1.jpg
Folder/2.jpg
等
但如果我在主文件夹中有一个文件夹......
Folder/nestedFolder/
console.log吐出
nestedFolder/1.jpg
但我希望它能够记录
Folder/nestedFolder/1.jpg
这是我的方法
function traverseFileTree(item,path){
path = path || "";
if (item.isFile){
console.log(path + item.name);
} else if (item.isDirectory){
var directoryPath = item.name
var dirReader = item.createReader();
dirReader.readEntries(function(entries){
for (var i=0; i < entries.length; i++){
traverseFileTree(entries[i], directoryPath + "/")
}
});
}
}
这就是在
中传递目录的地方function handleDrop(e) {
var items = e.dataTransfer.items;
var length = items.length;
for (var i = 0; i < length; i++) {
var item = items[i].webkitGetAsEntry();
if(item){
traverseFileTree(item);
}
}
};
答案 0 :(得分:-1)
只需要改变
var directoryPath = item.name
到
var directoryPath = path + item.name