很多时候一个工程需要多个单页面应用(多入口),用于不同的模块,或者不同的端。
1.注意点:webpack构建出来的多页面,每个页面都是不相关的,js运行环境不同,window对象不同,如果是Vue,那么每个页面的vue实例不同,每个vue实例都有自己的vuex、router。
2.根据文件目录自动生成entry
目录结构:
代码:
let entryFileType = 'index.js';
let getEntry = () => {
glob.sync(`./src/pages/**/${entryFileType}`).forEach(_path => {
const chunk = _path.split('./src/pages/')[1].split(`/${entryFileType}`)[0];
entries[chunk] = _path;
});
return entries;
};
参考:
https://juejin.im/post/5b9491a6f265da0ab5035df8
https://juejin.im/entry/5a463e2bf265da4321545ed1