我正在尝试使用一些 scss 为我的项目制作 webpack 配置。其中一些来自根项目和一些我想从依赖项加载的 scss,例如从node_modules
. 我遇到了一个奇怪的错误,如果我不包含node_modules
在模块中,它会被构建,包括我在根项目中拥有的一些 scss。但是,如果我添加include: path.resolve(__dirname, 'node_modules')
或任何其他文件夹(前一个不存在的文件夹)它会失败,但在根项目中的文件上而不是在node_modules
它之前提取的相同文件中,没有错误。
这是 webpack 配置:
const extractCSS = new ExtractTextPlugin({ filename: 'style.css', disable: false, allChunks: true });
module: {
rules: [
{
test: /\.scss$/,
include: path.resolve(__dirname, 'node_modules'),
use:extractCSS.extract({
fallbackLoader: 'style-loader',
loader: ['css-loader', 'sass-loader'],
})
},
]
}
因此,如果我用它注释掉该行include
但不包含node_modules
,并且如果我不注释该行,我会收到错误:
Unexpected character '@' (1:0) You may need an appropriate loader to handle this file type.
在根项目中的所有 scss 文件中。
我究竟做错了什么?