【问题标题】:Nodejs get subfolders listNodejs获取子文件夹列表
【发布时间】:2021-02-26 04:49:58
【问题描述】:

我需要获取所有子文件夹的特定路径,我尝试过以下方法

p = '/Users/i099566/projects/mp'

mp 文件夹下有sub-folders/folders,我想得到它(不是文件)

当使用以下代码时,我得到了null,知道我在这里缺少什么吗?

const { readdirSync, statSync } = require('fs')
const { join } = require('path')

const dirs = (p: any) => readdirSync(p).filter((f: any) => statSync(join(p, f)).isDirectory())
console.log(dirs)
    

【问题讨论】:

  • 你的意思是console.log(dirs(p))

标签: javascript node.js typescript directory fs


【解决方案1】:
const { lstatSync, readdirSync } = require('fs')
const { join } = require('path')

const isDirectory = source => lstatSync(source).isDirectory()
const getDirectories = source =>
  readdirSync(source).map(name => join(source, name)).filter(isDirectory)

检查此代码示例!

【讨论】:

    【解决方案2】:

    请注意,dirs 是一个函数,它采用称为 p 的 any 类型的参数。
    使用console.log(dirs),您正在打印该函数并且不要以任何方式调用它。

    如果您删除 (p: any) => 并在变量 p 正常工作之前定义它,那么 dirs 将存储右侧表达式的结果而不是函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-29
      相关资源
      最近更新 更多