gpt4 book ai didi

Webpack:将 JS 转换为 SASS 和 CSS

转载 作者:行者123 更新时间:2023-12-05 07:14:07 25 4
gpt4 key购买 nike

我的目标是从包含我迭代的所有主题和颜色的 Javascript 文件创建一个 SASS 和 CSS 文件。

我有一个 themes.js 文件,其中包含两个包含我所有颜色模式的对象:colorPalettethemes。我正在将这些对象导入我的入口点 (./src/index.js)。入口点使用 JS 遍历所有的调色板和主题以创建一个大的 SASS 字符串。使用 HtmlWebpack 插件,我可以将其打印到 DOM。但是,我的主要目标是使用此输出字符串创建一个 SASS 文件。我使用了 sass、style 和 css 加载器以及 miniCssExtracttextExtract 插件来尝试将此字符串捕获为 SASS 文件。我已经对配置进行了相当多的尝试(添加多个插件,将它们全部删除等),但下面是我的最新迭代:

var config = { 
module: {
rules: [
{
test: /\.scss$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: ['style-loader','css-loader', 'sass-loader']
})
}
]
}
}

var clientConfig = ({ mode, presets } = { mode: "production", presets: [] }) => {
return webpackMerge(
{
mode,
plugins: [ new HtmlWebpackPlugin()]
},
modeConfig(mode),
presetConfig({ mode, presets }),
Object.assign({}, config, {
name:"main",
entry: "./src/index",
output: {
path: path.resolve(__dirname +'dist'),
filename: "bundle.js"
}
})
)
}

module.exports = [clientConfig]

我知道 webpack 输出的文件是运行时文件,它是一个包含多个模块的数组,但我不知道如何(或者如果我应该)使用它来生成我的 SASS 文件。我觉得我对如何使用 webpack 有点不了解,所以非常感谢任何帮助。

最佳答案

可以引用我的代码here

module: {
rules: [{
test: /\.scss$/,
use: [
'style-loader',
MiniCssExtractPlugin.loader,
{
loader: "css-loader",
options: {
minimize: true,
sourceMap: true
}
},
{
loader: "sass-loader"
}
]
}
]
}

然后像这样在你的js中导入文件

import "style.scss";

关于Webpack:将 JS 转换为 SASS 和 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59977345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com