问题描述
NodeJS 项目(不是运行在浏览器中的项目)通过 webpack 打包成单文件,但使用的模块中使用了 fs.readdirSync 方法查找文件夹内的 js 文件,并批量导入,导致成功打包后,运行时 fs.readdirSync 方法报错。
运行方法为 node index.js
。
注:index.js 为成功打包的单文件。
问题出现的环境背景及自己尝试过哪些方法
使用 mp-sdk 模块时出现该问题。使用 fs.readdirSync 方法查找文件夹内的 js 文件的代码位置
相关代码
# 使用的模块中使用 fs.readdirSync 方法查找文件夹内的 js 文件
const modules = fs.readdirSync(path.join(__dirname, '/modules')).filter(f => f.endsWith('.js')).map(f => f.replace(/.js$/, ''));
你期待的结果是什么?实际看到的错误信息又是什么?
希望成功打包后,能正常运行。目前运行时 fs.readdirSync 方法报错。
webpack 的配置里加上
target: 'node'
就好了吧,参考target