我正在尝试创建一个以参数目录字符串为例的函数(例如:'public / css')解析该目录和子目录,并返回相对于项目目录的文件路径数组。
答案 0 :(得分:1)
您可以使用从Get all directories within directory nodejs
获取目录的概念const fs = require('fs')
const path = require('path')
function getDirectories (srcpath) {
return fs.readdirSync(srcpath)
.filter((file) => {
fs.lstatSync(path.join(srcpath, file)).isDirectory())
}
正如您所看到的,每个文件夹都有一个选项,可以使用readdirSync
函数读取它的内容。
我希望它能让您更好地了解节点中的文件系统并帮助您继续前进
答案 1 :(得分:-1)
好的,依靠ShukiB提供的代码我的功能如下:
const flatten = arr => arr.reduce((acc, val) =>
acc.concat(Array.isArray(val) ? flatten(val) : val), []);
Array.prototype.flatten = function() {return flatten(this)};
const walkDir = dir => fs.readdirSync(dir)
.map(file => fs.statSync(path.join(dir, file)).isDirectory()
? walkDir(path.join(dir, file))
: path.join(dir, file).replace(/\\/g, '/')).flatten();