TypeError: this.addChunk is not a function 的解决方法

用webpack提取公共模块,通常会用到CommonsChunkPlugin插件。

CommonsChunkPlugin用法如下:

var webpack = require('webpack');

var config = {
    entry: {
        'index': ['./src/page/index/index.js'],
        'login': ['./src/page/login/login.js']
    },
    output: {
        path: __dirname + '/dist',
        filename: 'js/[name].js'
    },
    externals: {
        'jquery': 'window.jQuery'
    },
    plugins: [
        new webpack.optimize.CommonsChunkPlugin({
            name: 'commons',
            filename: 'js/base.js'
        })
    ]
};

module.exports = config;

 

但在webpack打包的时候,报了TypeError: this.addChunk is not a function错误,具体错误如下:

 

 

这是因为此时使用的webpack并不是本地安装的webpack,而是全局安装的webpack,可以用webpack -v查看一下webpack的版本。

 

解决方法:

在package.json的scripts块中添加"webpack":"webpack"           :

"scripts": {
    "webpack": "webpack"
  }

然后运行npm run webpack,发现就已经打包好了:

 

 

posted @ 2018-04-14 18:06  S.mh  阅读(835)  评论(0编辑  收藏  举报