尝试将node-sass-json-importer添加到Angular CLI应用程序中。
我使用的是CLI的1.0.0-beta.17
版本,但是还没有能够使用当前版本1.2
来解决这个问题。通过纱线安装后,我不知道应该在应用程序配置中设置它。
有没有人成功将其整合到他们的应用程序中?我能找到的only answer是针对使用Webpack的应用程序,而不是针对Angular CLI。
答案 0 :(得分:4)
通过更改styles.js
解决了这个问题
node_modules/@angular/cli/models/webpack-configs/styles.js
在上面的文件中,按照下面的说明进行编辑
const jsonImporter = require('node-sass-json-importer');
并在.scss
规则中添加importer:jsonImporter
{ test: /\.scss$|\.sass$/, use: [{
loader: 'sass-loader',
options: {
sourceMap: cssSourceMap,
// bootstrap-sass requires a minimum precision of 8
precision: 8,
includePaths,
importer: jsonImporter,
}
}]
}
这可能不是最好的解决方案但是解决了你的问题,我没有选择将args传递给node-sass,在这种情况下它是--importer'./node_modules/node-sass-json-进口商',
根据此链接https://github.com/angular/angular-cli/issues/1791,它仅允许includePaths选项。
希望这有帮助!!!
答案 1 :(得分:-1)
如果使用css-loader,则可以启用模块功能。启用它将为您提供导入css的灵活性,就像需要javascript对象一样。我用过反应,你可以做同样的角度猜测。这是非常酷的功能,你应该检查一下。
commit
https://github.com/webpack-contrib/css-loader https://javascriptplayground.com/css-modules-webpack-react/