我想创建一个文件夹选择器,在服务器端选择一个甚至更好的多个文件夹并获取它们的路径。为此我需要某种FolderPicker或FolderTreeView。
我尝试了jQuery文件树(www.abeautifulsite.net/jquery-file-tree/),但我只获得了项目根目录的文件夹结构。用fs甚至可以访问项目文件夹之外的东西吗?
我很感激所有的小信息。
答案 0 :(得分:0)
希望它可以帮到你。
可能重复:https://stackoverflow.com/a/21459809/5228251
以下功能取自^上面的链接。
var _getAllFilesFromFolder = function(dir) {
var filesystem = require("fs");
var results = [];
filesystem.readdirSync(dir).forEach(function(file) {
file = dir+'/'+file;
var stat = filesystem.statSync(file);
if (stat && stat.isDirectory()) {
results = results.concat(_getAllFilesFromFolder(file))
} else results.push(file);
});
return results;
};
用法:_getAllFilesFromFolder(__dirname + '/' + 'foldername');
^上面的函数将结果作为一个数组返回,该数组包含该' foldername'中的每个文件的路径。目录.. 并根据你在渲染之前在客户端使用的js / jquery库(configs)进行解析。
然后您可以使用任何js库在客户端的树结构中显示。几个月前我在我的项目中使用了jstree。您可以使用任何其他内容,例如 jquery-fileTree 等。
使用jade / html(无论你想要什么)和express来渲染结果数据。
以下是我将代码转换为树(目录)结构格式的代码:
https://gist.github.com/narainsagar/79d742ab9c62e29a81d1b1bba804782f
感谢。