我使用node.js(最后一个版本)和webpack来创建一个包。根据我的阅读,node.js应包含用于管理文件的fs模块。然而,当我打电话给需要(" fs")时,我得到一个找不到模块" fs"错误。我已经坚持要求未定义'在我的控制台中添加" target:' node' &#34 ;.任何帮助都是有用的,thx。
var webpack = require('webpack');
module.exports = {
entry: "./client/main.js",
output: {
path: __dirname + '/public/build/',
publicPath: "build/",
filename: "bundle.js"
},
node: {fs: "empty"},
module: {
loaders: [
{
test: /\.js$/,
loader: "babel",
exclude: [/node_modules/, /public/]
},
{
test: /\.css$/,
loader: "style-loader!css-loader!autoprefixer-loader",
exclude: [/node_modules/, /public/]
},
{
test: /\.less$/,
loader: "style-loader!css-loader!autoprefixer-loader!less",
exclude: [/node_modules/, /public/]
},
{
test: /\.gif$/,
loader: "url-loader?limit=10000&mimetype=image/gif"
},
{
test: /\.jpg$/,
loader: "url-loader?limit=10000&mimetype=image/jpg"
},
{
test: /\.png$/,
loader: "url-loader?limit=10000&mimetype=image/png"
},
{
test: /\.svg/,
loader: "url-loader?limit=26000&mimetype=image/svg+xml"
},
{
test: /\.jsx$/,
loader: "react-hot!babel",
exclude: [/node_modules/, /public/]
},
{
test: /\.json$/,
loader: "json-loader"
}
]
},
target: 'node',
}

答案 0 :(得分:0)
而不是标记" fs"为空,试着像这样装饰它:
externals:{
"fs": "commonjs fs"
}
这应该告诉webpack将其作为模块加载,而不是将其视为环境对象/变量。
答案 1 :(得分:0)
通过设置node: {fs: "empty"},
,您告诉webpack在导入fs
时应返回一个空对象。删除它,它应该工作正常。 https://webpack.js.org/configuration/node/#node