webpack - 使用 Gatsby 忽略 mini-css-extract-plugin 的顺序

标签 webpack gatsby css-modules mini-css-extract-plugin

问题:

控制台充斥着警告,例如:warn chunk commons [mini-css-extract-plugin] Conflicting order。我做了一些研究,发现这些警告可以被忽略,因为我正在使用 css-modules 并且导入的顺序并不重要。 我发现按照以下步骤消除警告不起作用。

warnings

所需的解决方案:

在插件配置中设置ignoreOrder = true选项。

我尝试过的:

我关注了类似的问题here并将代码添加到我的 gatsby-node.js 中:

const path = require('path')

module.exports.onCreateWebpackConfig = ({
    stage,
    actions,
    getConfig
}) => {
    actions.setWebpackConfig({
        resolve: {
            modules: ['node_modules', path.resolve(__dirname, 'src')],
            alias: {
                'basic-info': path.resolve(__dirname, 'src/app/routes/basic-info'),
                'situation-analysis': path.resolve(__dirname, 'src/app/routes/situation-analysis'),
                'select-drivers': path.resolve(__dirname, 'src/app/routes/select-drivers'),
                'define-vision': path.resolve(__dirname, 'src/app/routes/define-vision'),
                'rate-drivers': path.resolve(__dirname, 'src/app/routes/rate-drivers'),
                'affinity-groups': path.resolve(__dirname, 'src/app/routes/affinity-groups'),
                'define-objectives': path.resolve(__dirname, 'src/app/routes/define-objectives'),
                'create-roadmap': path.resolve(__dirname, 'src/app/routes/create-roadmap')
            }
        },

        devtool: 'eval-source-map'
    })

    if (stage === 'build-javascript') {
        const config = getConfig()

        const miniCssExtractPlugin = config.plugins.find(
            plugin => (plugin.constructor.name === 'MiniCssExtractPlugin')
        )

        if (miniCssExtractPlugin) miniCssExtractPlugin.options.ignoreOrder = true

        actions.replaceWebpackConfig(config)
    }
}

最佳答案

你尝试过吗:

const path = require('path')

module.exports.onCreateWebpackConfig = ({
    stage,
    actions,
    getConfig
}) => {
    actions.setWebpackConfig({
        resolve: {
            modules: ['node_modules', path.resolve(__dirname, 'src')],
            alias: {
                'basic-info': path.resolve(__dirname, 'src/app/routes/basic-info'),
                'situation-analysis': path.resolve(__dirname, 'src/app/routes/situation-analysis'),
                'select-drivers': path.resolve(__dirname, 'src/app/routes/select-drivers'),
                'define-vision': path.resolve(__dirname, 'src/app/routes/define-vision'),
                'rate-drivers': path.resolve(__dirname, 'src/app/routes/rate-drivers'),
                'affinity-groups': path.resolve(__dirname, 'src/app/routes/affinity-groups'),
                'define-objectives': path.resolve(__dirname, 'src/app/routes/define-objectives'),
                'create-roadmap': path.resolve(__dirname, 'src/app/routes/create-roadmap')
            }
        },

        devtool: 'eval-source-map'
    })

    if (stage === 'build-javascript' || stage === 'develop') {
        const config = getConfig()

        const miniCssExtractPlugin = config.plugins.find(
            plugin => (plugin.constructor.name === 'MiniCssExtractPlugin')
        )

        if (miniCssExtractPlugin) miniCssExtractPlugin.options.ignoreOrder = true

        actions.replaceWebpackConfig(config)
    }
}

关于webpack - 使用 Gatsby 忽略 mini-css-extract-plugin 的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67474408/

相关文章:

javascript - 服务器端渲染构建错误期间 Gatsby 窗口不可用

reactjs - 为什么 Gatsby 的两个不同布局上的两个 StaticQuery 元素不能具有相同的名称?

webpack - 将手写笔添加到具有 css 模块的 webpack 2 应用程序

sass - 您可以使用 SCSS 模块定位/修改现有类吗?

css - 使用 css 模块,如何使用 composes 来包含颜色变量列表

javascript - 单击按钮无法打开脚本

reactjs - 从一个 Webpack 配置输出多个 React 应用程序

node.js - 如何访问 netlify-lambda 中的 gatsby 环境变量

javascript - 如何在 typescript 中模拟 XMLHTTPRequest 以进行单元测试

java - 使用gradle执行不在项目根目录下的webpack