递归readdir填充数组"/>
NodeJS从递归readdir填充数组
我对诺言不熟悉,我知道问题在于我正在尝试读取诺言已解决的数组[[之前。如果我只用console.log文件可以正常打印,则只需将它们放在数组中,这样我就可以遍历它们。
有人可以向正确的方向推我吗?我正在使用递归-readdir节点模块来获取dir1和dir2目录中所有文件的列表,并将它们添加到数组(变量站点地图)中。var recursive = require("recursive-readdir");
var directories = ['dir1', 'dir2'];
var sitemap = [];
for(var i = 0; i < directories.length; i++) {
recursive(directories[i], ["*.pdf", "*.json", "*.xml", "*.jpg", "*.gif", "*.png", "*.css", "*.js", "*.flv", "*.swf", "*.ttf", "*.pptx", "*.doc", "*.docx"], function (err, files) {
for(var x = 0; x < files.length; x++) {
let url = 'example/' + files[x];
addURL(url);
}
});
}
function addURL(url) {
sitemap.push(url);
}
// Returns empty array
console.log(sitemap);
var recursive = require("recursive-readdir");
var directories = ['dir1', 'dir2'];
var sitemap = [];
const extns = ["*.pdf", "*.json", "*.xml", "*.jpg", "*.gif", "*.png", "*.css", "*.js", "*.flv", "*.swf", "*.ttf", "*.pptx", "*.doc", "*.docx"];
const path1 = recursive(directories[0], extns);
const path2 = recursive(directories[1], extns);
Promise.all([path1, path2]).then(function(files) {
for (let x = 0; x < files.length; x++) {
let url = 'example/' + files[x];
addURL(url);
}
});
function addURL(url) {
sitemap.push(url);
}
console.log(sitemap);
更多推荐
NodeJS从递归readdir填充数组
发布评论