@H_5020@前言
@H502_0@年初的时候公司的老后台系统实在难以维护和继续在其上开发了,因为这个系统被很多人写过页面,有前端有后端,编写前端代码时都非常随意,加之没有模块化,复用性和可维护性都极低,便下定决定,重新搞一套。
@H_502_0@经过一段时间的调研选择了vue全家桶+elementUI来开发后台系统,让交互体验更好,让开发体验更好,让生产效率提高。
@H_502_0@
从零搭建其实考虑的事情还挺多的,比如:
@H_502_0@这篇文章来记录下和脚手架相关的改造,首先其实就是上了vue-cli来做,可是呢?由于预计项目会有很多页面,这些页面其实是分模块的,不同模块的页面之前其实关系不大。所以我觉得一个用户其实大部分时候只会用到其中一个模块的页面,如果把所有页面做成一个单页应用很多资源加载就不是很必要了,所以第一个改造就是:做成多入口打包,也就是做成多个单页应用,每个模块一个入口。 @H_502_0@/build/utils
/build/webpack.base.conf
/build/webpack.dev.conf
@H_502_0@/build/weback.prod.conf
在webpack.prod.conf的plugins里面加入:
包括声明CommonsChunkPlugin的顺序也是有关系的,不是随意的,后声明的是顶级模块,先声明的是依赖顶级模块的模块
// HtmlWebpackPlugin注入模块链接的时候的顺序也是由此保证的
new webpack.optimize.CommonsChunkPlugin({
names: ['echarts','vendor'],minChunks: function (module,count) { // 抽取公用vendor.css
// console.log(module.resource)
return (
module.resource &&
/\.css$/.test(module.resource) &&
module.resource.indexOf(
path.join(__dirname,'../node_modules')
) === 0
)
}
}),
@H_502_0@