webpack grunt 2任务

时间:2015-02-25 13:18:41

标签: javascript gruntjs webpack

我正在使用webpack和grunt。

我希望有三件事:本地服务器(用于工作......),开发链接(用于半技术人员的调试和测试)和生产链接。

到目前为止,我的grunt webpack看起来像这样:

webpack: {
            options: webpackDistConfig,
            dist: {
                cache: false
            } 
    },
'webpack-dev-server': {...}

现在我希望它看起来像这样:

webpack: {
        prod:{
            options: webpackDistConfig,

            dist: {
                cache: false
            }
        },
        dev: {
            options: webpackDistDevConfig,

            dist: {
                cache: false
            }
        }

    }

哪个不行...... 我究竟做错了什么? (或者你有其他选择)

谢谢!

1 个答案:

答案 0 :(得分:2)

grunt-webpack期望目标成为选项本身。在您的第一个代码段中,我们将webpackDistConfig作为所有目标的基本配置。 dist目标会覆盖cache属性,但会保留配置的其余部分。

要使任务按您的意愿工作,有两种选择:

  1. 引用目标中的每个配置。这意味着您需要在每个webpack配置中放置cache属性。

    webpack: {
          prod: webpackDistConfig,
          dev: webpackDistDevConfig
    }
    
  2. 引用基本配置并更改目标

    中的必要属性
    webpack: {
          options: webpackDistDevConfig
          prod: {
            cache: true
          },
          dev: {
            cache: false
          }
    }