0

在我的项目中,我需要将一个全局变量从环境文件中注入到 SCSS 文件中,以便在整个应用程序中使用。

遵循这样的建议我来说是不可能的,因为该应用程序包含大约 50 种不同的可能配置,因此维护这么多项目angular.json是不可行的。

在我们当前的设置中,使用 webpack,我们使用了data选项sass-loader来注入从环境文件中导入的任何变量。目前使用 angular-cli 是不可能的 - 使得迁移变得不可能。

我们怎样才能做到这一点?

4

1 回答 1

0

我最终成功地使用了ngx-build-plus,按照这篇文章,并使用了这个webpack.extra.js

const webpack = require('webpack');
const configs = require('./src/configs');

module.exports = {
  plugins: [new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/)],
  resolve: {
    modules: ["node_modules"],
  },
  module: {
    rules: [
      {
        test: /\.scss$/,
        use: [
          {
            loader: 'sass-loader',
            options: {
              sourceMap: true,
              includePaths: ["src/ng1/assets/sass"],
              data: `
                    $templateTheme: ${configs.templateTheme};
                  `,
            },
          },
        ],
      },
    ],
  },
};
于 2019-04-16T06:52:38.983 回答