Javascript 网页包将SASS SCSS提取到js或json文件

Javascript 网页包将SASS SCSS提取到js或json文件,javascript,css,angular,webpack,sass,Javascript,Css,Angular,Webpack,Sass,对于我目前正在进行的一个项目,我正在用webpack构建一个角度应用程序,它将有多个主题/样式表。我目前正在将主题样式表提取到单独的CSS文件中,这非常完美 然而,我在单独的SCSS文件中有所有的主题变量,我也需要在我的Angular代码中包含这些变量。现在,由于AOT编译,我无法导入变量SCSS文件 我正在为特定主题文件使用以下网页设置: 当我使用ExtractTextWebpack插件时,我可以使用原始加载程序将其保存到.txt文件(JSON对象中包含变量),但无法将其保存到JS。使用原始加

对于我目前正在进行的一个项目,我正在用webpack构建一个角度应用程序,它将有多个主题/样式表。我目前正在将主题样式表提取到单独的CSS文件中,这非常完美

然而,我在单独的SCSS文件中有所有的主题变量,我也需要在我的Angular代码中包含这些变量。现在,由于AOT编译,我无法导入变量SCSS文件

我正在为特定主题文件使用以下网页设置:

当我使用ExtractTextWebpack插件时,我可以使用原始加载程序将其保存到.txt文件(JSON对象中包含变量),但无法将其保存到JS。使用原始加载程序,这仍然包括'modules.export'前缀,因此我也无法将其保存为json

当我将这个vars SCSS文件设置为入口点时,输出不在我的输出目录中

有没有办法:

  • 将SCSS变量转换为JSON或JS
  • 是否将此数据保存到输出目录中的JSON或JS文件

  • 不用将变量从SASS导出到JSON,您可以将共享变量放入JSON文件,并将它们同时导入到SASS和JSON。您应该能够使用该软件包在Angular中实现这一点

    settings.json

    {
        "background-colour": "#FFF",
        "foreground-colour": "#333"
    }
    
    main.scss

    @import "settings.json"
    
    body {
        color: $foreground-colour;
        background-color: $background-colour;
    }
    
    @import "settings.json"
    
    body {
        color: $foreground-colour;
        background-color: $background-colour;
    }