UNPKG

1.24 kBJavaScriptView Raw
1var fs = require("fs");
2var path = require("path");
3var _ = require("underscore");
4var curDir = "/";
5//获取列表
6function getTree(root) {
7 var files = [];
8 var fileItems;
9 curDir = root?root:curDir;
10
11 if (!fs.existsSync(curDir)) {
12 throw "Can't find folder";
13 return;
14 }
15 var stat = fs.statSync(curDir);
16
17 if (stat.isDirectory()) {
18 fileItems = fs.readdirSync(curDir);
19 if(curDir!="/"){
20 files.push({
21 name : "..",
22 path : path.join(curDir, ".."),
23 icon : "icon-arrow-up",
24 type : "folder"
25 });
26 }
27 _.each(fileItems, function(name) {
28 var p = path.join(curDir, name);
29 var s = fs.statSync(p);
30 var isD = s.isDirectory();
31 var icon = isD ? "icon-folder-open" : "icon-file";
32 var type = isD ? "folder" : "file";
33 if(name.indexOf(".")==0)return;
34 files.push({
35 name : name,
36 path : p,
37 icon : icon,
38 type : type
39 });
40 });
41 }
42
43 return {
44 files:files,
45 cur:curDir
46 }
47}
48
49module.exports.getTree = getTree;