提问者:小点点

Nodejs获取子文件夹列表


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

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

mp文件夹下有子文件夹/文件夹,这是我想要的(不是文件)

当使用下面的代码时,我得到了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)
    

共2个答案

匿名用户

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

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

匿名用户

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)

检查这个代码示例!