检索文件系统 api 的所有目录
Retrieve all directories with file system api
有没有一种方法可以计算文件系统 api 文件夹中的所有目录而不陷入无限循环!?
无法弄清楚泄漏的原因或位置,但我最终不得不在它达到 50K 后退出我的应用程序 - 它看起来从未达到终点。我在 OS X 那么它是否计算所有隐藏的目录和文件,例如 DS Store?
//path: my folder
app.workspace.getDirectory(path, {}, function(directory){
var reader = directory.createReader();
if(directory){
reader.readEntries(function(entries){
for(var i = 0; entries.length; i++) {
if(entries.isDirectory){
console.log('Directory: ', entries[i]);
}
else {
//don't need to know anything else...
}
}
});
}
}, error);
您的 for 循环在迭代时从不检查 i
与 entries.length
。
修改
for(var i = 0; entries.length; i++)
到
for(var i = 0; i < entries.length; i++)
此外,我假设 if(entries.isDirectory)
应该是 if(entries[i].isDirectory)
.
你可以试试bro-fs可以递归读取目录:
fs.readdir('dir', {deep: true})
.then(tree => console.log(tree))
有没有一种方法可以计算文件系统 api 文件夹中的所有目录而不陷入无限循环!?
无法弄清楚泄漏的原因或位置,但我最终不得不在它达到 50K 后退出我的应用程序 - 它看起来从未达到终点。我在 OS X 那么它是否计算所有隐藏的目录和文件,例如 DS Store?
//path: my folder
app.workspace.getDirectory(path, {}, function(directory){
var reader = directory.createReader();
if(directory){
reader.readEntries(function(entries){
for(var i = 0; entries.length; i++) {
if(entries.isDirectory){
console.log('Directory: ', entries[i]);
}
else {
//don't need to know anything else...
}
}
});
}
}, error);
您的 for 循环在迭代时从不检查 i
与 entries.length
。
修改
for(var i = 0; entries.length; i++)
到
for(var i = 0; i < entries.length; i++)
此外,我假设 if(entries.isDirectory)
应该是 if(entries[i].isDirectory)
.
你可以试试bro-fs可以递归读取目录:
fs.readdir('dir', {deep: true})
.then(tree => console.log(tree))