我正在从 Webpack 2 升级到 3,我遇到了file-loader@1.0.0-beta.1
. 这是我得到的错误:
You may need an appropriate loader to handle this file type.
| export default = __webpack_public_path__ + "foo.css"
(为简洁起见,省略了完整的错误详细信息。这是相关部分。)
这是 Webpack 配置:
module: {
rules: [{
test: /\.scss$/,
use: [{
loader: 'file-loader',
options: {
name: '[name].css'
}
},
'extract-loader',
'css-loader',
'sass-loader'
fallback: 'style-loader/url'
}
}
在我使用之前0.9.0
,没有错误。查看两个版本之间的差异,我看到它0.9.0
返回一个使用 CJS 格式而不是 Harmony 的字符串。
return "module.exports = " + publicPath + ";";
return `export default = ${publicPath};`;
我试着把它放在babel-loader
后面,file-loader
但这并没有解决问题。我可以使用0.9.0
并且一切正常,但是我不想被困在那个版本上。