我正在尝试使用sass-loader在Webpack 2中使用Foundation。
我正在使用
导入基金会@import 'foundation-sites/scss/foundation';
因为无法找到基础而导致导入错误。阅读sass-loader的文档表明我应该实际使用:
@import '~foundation-sites/scss/foundation';
修复导入错误但会产生新问题。
我收到的错误是
中的ModuleBuildError 模块构建失败: @import“normalize”; ^ 要导入的文件未找到或不可读:normalize
要导入的文件未找到或不可读:normalize 父样式表:... / node_modules/foundation-sites/scss/foundation.scss in ... /node_modules/foundation-sites/scss/foundation.scss(第9行,第1列)
在我的webpack配置文件中,我也使用ExtractTextPlugin,如下所示:
module: {
rules: [
{
test: /\.(scss|css)$/,
loader: ExtractTextPlugin.extract({
fallbackLoader: 'style-loader',
loader: [
{
loader: 'css-loader'
},
{
loader: 'sass-loader',
query: {
includePaths: [path.resolve(__dirname, "./node_modules")]
}
}
]
})
}
]
},
resolve: {
modules: ['node_modules']
}
我认为这来自于webpack由于某种原因没有解析到node_modules文件夹,但不确定原因来自何处。
答案 0 :(得分:3)
试试这个,因为这是唯一对我有用的东西。
new webpack.LoaderOptionsPlugin({
options: {
context: '/', // <- putting this line right under "options" did the trick
sassLoader: {
includePaths: [
path.resolve(__dirname, 'vendor/zurb/foundation/scss'),
]
}
}
})