将node-sass-json-importer集成到Angular CLI应用程序中

sub*_*oca 12 javascript sass node-sass angular-cli angular

尝试将node-sass-json-importer添加到Angular CLI应用程序中.

我使用1.0.0-beta.17的是CLI 版本,但是还无法使用当前版本来解决1.2这个问题.通过纱线安装后,我不知道应该在应用程序配置中设置它.

有没有人成功地将其整合到他们的应用程 我能找到的唯一答案是使用Webpack的应用程序,而不是Angular CLI.

Amp*_*esh 3

通过更改 styles.js 解决了这个问题

node_modules/@angular/cli/models/webpack-configs/styles.js 
Run Code Online (Sandbox Code Playgroud)

在上面的文件中,进行如下编辑

const jsonImporter = require('node-sass-json-importer');
Run Code Online (Sandbox Code Playgroud)

并在 .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,
                    }
                }]
        }
Run Code Online (Sandbox Code Playgroud)

这可能不是最好的解决方案,但可以解决您的问题,我看不到将参数传递给node-sass的选项,在本例中它是 --importer './node_modules/node-sass-json-importer' ,

根据此链接https://github.com/angular/angular-cli/issues/1791,它仅允许单独使用 includePaths 选项。

希望这可以帮助 !!!