【问题标题】:Node directory parser [closed]节点目录解析器[关闭]
【发布时间】:2017-10-19 07:06:45
【问题描述】:

我正在尝试制作以目录字符串为参数的函数(例如:'public/css')解析该目录和子目录并返回相对于项目目录的文件路径数组。

【问题讨论】:

  • 你有什么尝试吗??

标签: javascript node.js


【解决方案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 函数读取其内容的选项。

我希望它能让您更好地了解 node 中的文件系统并帮助您前进

【讨论】:

    【解决方案2】:

    好的,依靠 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();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-24
      • 2013-01-31
      • 2018-06-21
      • 1970-01-01
      • 1970-01-01
      • 2012-12-26
      • 1970-01-01
      • 2013-03-28
      相关资源
      最近更新 更多