Webpack v4-从CommonsChunkPlugin迁移到SplitChunksPlugin

时间:2018-12-28 17:54:57

标签: javascript webpack webpack-splitchunks

我很难弄清楚如何使用SplitChunksPlugin将Webpack设置从v3迁移到v4。我以前进行此设置的方式是这样的:

webpack.mix.js

notifyDataSetChanged

global.js

...
entry: {
    main: mainJsEntry,
},
plugins: [
    new webpack.optimize.CommonsChunkPlugin({
        names: ["main"],
        filename: 'js/[name].js',
        minChunks: Infinity
    })
],
...

page1.js

const Vue = require('vue'); // this ends up in global.js
const myModule = require('global/mymodule.js'); // this is imported into global.js

page2.js

const Vue = require('vue'); // this references global.js
const anotherLibrary = require('anotherLibrary'); // this is imported into page1.js

我想做的是让global.js以外的所有Javascript包都引用从global.js导入的现有内容,但不要捆绑任何未在global.js本身内部导入的模块。

在遵循了Webpack v4的文档之后,我似乎只能使Webpack将我在其他模块中多次导入的所有内容捆绑到global.js中,但是我不想要那样。用例是,如果我希望在两页上放置一个轮播,我会在每个页面上导入,但是我不希望它在全球范围内使用,因为它在网站上100多个页面中的2个上都使用过。

const myModule = require('global/mymodule.js'); // this references global.js
const anotherLibrary = require('anotherLibrary'); // this is imported into page2.js

我希望我希望做的清楚。任何帮助表示赞赏。

0 个答案:

没有答案