基于crp的脚手架优化:
1.针对config文件下的path.js文件
- getPublicUrl 函数内有 homepage 属性,该属性在package.json文件可进行配置,用于服务器路径不为根目录的情况,homepage:"" 设置会将 index.html中的
%PUBLIC_URL%
替换为.
,从而拼接为:./main.123456.js
这样的一个相对index.html的资源路径;getServedPath 函数也可以进行配置路径 - 可以在path.js文件中,新增所需的 appBuild 等配置路径,便于配置相应的服务器多层目录的情况
- babel-polyfill 不建议在页面入口添加,建议在config文件夹下的polyfills.js添加 require('babel-polyfill');
- webpack.config.dev.js 和 webpack.config.prod.js 中 alias 进行配置别名
-
{ test: require.resolve('jquery'), use: [{ loader: 'expose-loader', options: 'jQuery' },{ loader: 'expose-loader', options: '$' }] }
JQ的webpack加载使用
-
entry 部分 新增 polyfill:require.resolve('./polyfills'), common:***************, 提取公用common文件
-
output 部分 可修改打包之后的css和js文件路径 filename 和 chunkFilename ;publicPath 部分在path.js配置,为前缀路径
-
new webpack.optimize.CommonsChunkPlugin({names: ["common"]}), new webpack.optimize.CommonsChunkPlugin({ // name: 'manifest', // chunks: ['common'] minChunks:2, minSize:0, children:true, deepChildren:true, async:true })
该配置用于打包压缩大小,缩短打包时长