2016-11-20 73 views
2

我有一个页面A.js和一个页面B.js,并且它有基类base.js。 我import base.js每个A和B,并用它作为extend A类和BWebpack,软件包加载器和公共块插件问题

我的路由器通过require('bundle!pages' + url + '.js'); 加载这些网页我想有base.js作为一个common.js的一部分。 我添加了常见块插件到webpack new webpack.optimize.CommonsChunkPlugin({ children: true, name: 'common', filename: 'common.js', minChunks: 2, }) 但作为输出,我仍然在类a.js和b.js中复制base.js。 bundle loader和common chunk插件有问题吗?

a.js

import Base from '../base'; 

class A extends Base { 
    constructor() { 
     super(); 
    } 

    create() {} 
} 

export default A; 

b.js

import Base from '../base'; 

class B extends Base { 
    constructor() { 
     super(); 
    } 

    create() {} 
} 

export default B; 

base.js

class Base { 
    constructor() {} 
} 

export default Base; 

router.js

let loader = require('bundle!pages' + url + '.js'); 
loader((module) => callback(module.default)); 
+0

相同问题在这里,任何解决方案 –

回答

0

Ť RY这样的: 在webpack.config.js增加出口对象该属性

externals: { 'base': 'Base' } 

,包括这在你的HTML头

我觉得这个功能是从的WebPack 2