我已经创建了nodejs控制台应用程序并尝试使用webpack缩小它。
webpack.config.js 我得到:
const path = require('path');
module.exports = {
externals: {
fs: "require('fs')",
readline: "require('readline')",
},
entry: './index.js',
output: {
path: path.resolve(__dirname, 'bin'),
filename: 'bin.js'
},
mode: 'development'
};
在运行构建的应用程序之前一切正常:
readline.js:189
input.on('data', ondata);
^
TypeError: input.on is not a function
at new Interface (readline.js:189:11)
at Object.createInterface (readline.js:69:10)
我应该怎样做才能避免这个错误?
最佳答案
我在某个地方找到了解决方案。在 webpack 配置文件中,我必须设置 target: node
来指示收集器如何处理标准外部包(例如 readline、fs、path 等)。
关于node.js - 如何在 webpack 中包含 readline,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54676651/