【问题标题】:NextJS - Use sass-loader to add variables to every scss fileNextJS - 使用 sass-loader 将变量添加到每个 scss 文件
【发布时间】:2021-12-30 10:40:39
【问题描述】:

我正在尝试将自定义 webpack 配置添加到我的 nextjs 项目中。 目标是为我的应用中的每个 scss 文件自动导入 @import "src/styles/variables.scss";

我有一个按预期工作的故事书的 webpack 配置,但我没有成功使它适用于 nextJS。

这是我的 Storybook 配置:

webpackFinal: async (config, { configType }) => ({
    ...config,
    module: {
      ...config.module,
      rules: [
        ...config.module.rules,
        {
          test: /\.scss$/,
          use: ['style-loader', 'css-loader', 'sass-loader'],
          include: path.resolve(__dirname, '../'),
        },
        {
          test: /\.s[ac]ss$/i,
          use: {
            loader: 'sass-loader',
            options: {
              additionalData: '@import "src/styles/variables.scss";',
            },
          },
        },
      ],
    },

还有我的 next.config.js

webpack: (config) => ({
    ...config,
    module: {
      ...config.module,
      rules: [
        ...config.module.rules,
        {
          test: /\.scss$/,
          use: ['style-loader', 'css-loader', 'sass-loader'],
          include: path.resolve(__dirname, './'),
        },
        {
          test: /\.s[ac]ss$/i,
          use: {
            loader: 'sass-loader',
            options: {
              additionalData: '@import "src/styles/variables.scss";',
            },
          },
        },
      ],
    },
  })

【问题讨论】:

    标签: javascript reactjs webpack sass next.js


    【解决方案1】:

    我们可以直接在next.config.js中添加sassOptions而不需要sass-loader。

    sassOptions: {
        additionalData: `@import "src/styles/variables.scss"; @import "src/styles/mixins.scss";`,
     },

    【讨论】:

      猜你喜欢
      • 2019-12-06
      • 2015-12-18
      • 2023-02-06
      • 2018-04-27
      • 2019-09-28
      • 1970-01-01
      • 2018-09-19
      • 2019-03-19
      • 2018-01-07
      相关资源
      最近更新 更多