webpack 生产环境相关
Posted ~往无前
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack 生产环境相关相关的知识,希望对你有一定的参考价值。
webpack生产环境配置就是当代码上线时保证可以正常运行。之前我我们提到的Babel,以及将css文件打包成单独文件的插件都是生产环境的配置。
一、CSS兼容性处理
1.安装
npm install postcss-loder postcss-preset-nev --save
2.文件配置
改配置必须在css-loader之前掉用
rules:[
{
test:/\\.css$/,
use:[
'css-loader',
{
loader:'postcss-loader',
options:{
//新版本配置写在postcssOptions中,PostcsspresetEnv写在plugins中
postcssOptions:{
// ident:'postcss',
plugins:[
[
PostcssPresetEnv
]
]
}
}
}
]
}
]
package.json文件中配置
//设置node.js环境变量
process.env.NODE_ENV='development';
//帮postcss找到package.json中browserslist里面的配置,通过配置加载指定的css兼容性样式
"browserslist": {
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
],
//生产环境是默认的配置,如果想要是开发环境配置,必须得进行上面的node.js环境变量的设置。
"production": [
">0.2%",
"not dead",
"not op_mini all"
]
},
二、CSS压缩处理
1.安装插件
npm install optimize-css-assets-webpack-plugin
2.配置文件
plugins:[
//压缩css
new OptimizeCssAssetWebpackPlugin()
],
三、html,js文件压缩
对于js文件,如果是生产环境,会自动将js文件进行压缩
1.安装插件
这个插件我们之前用来导出一个html文件,当然给予一定的配置,也可以进行代码的压缩。
npm install html-webpack-plugin
2.文件配置
plugins:[
new HtmlWebpackPlugin({
template:'./src/index.html',
//压缩html文件
minify:{
//移除空格
collapseWhitespace:true,
//移除注释
removeComments:true
}
}),
],
//生产环境自动压缩
mode:"production",
四、语法检查
语法检查是为了保证所有的程序员所写的代码都是同一种规则的,这时候使用语法检查就可以找出不符合规则的代码。
1.安装
npm install eslint-loader eslint eslint-config-aribnb-base eslint-plugin-import --save
2.文件配置
{
test:/\\.js$/,
exclude:/node_modules/,
loader:'eslint-loader',
options:{
//自动修复eslint的错误
fix:true
}
}
package.json的配置
"eslintConfig": {
"extends": "airbnb-base",
"env": {
"browser": true
}
},
在js文件中如果想要对下一行的所有规则都失效(下行不进行eslint检查)
// eslint-disable-next-line
console.log(add(2, 5));
以上是关于webpack 生产环境相关的主要内容,如果未能解决你的问题,请参考以下文章
vue-cli脚手架npm相关文件说明-2webpack.prod.conf.js
[万字逐步详解]使用 webpack 打包 vue 项目(基础生产环境)
[万字逐步详解]使用 webpack 打包 vue 项目(优化生产环境)
VUE 利用 webpack 给生产环境和发布环境配置不同的接口地址
webpack开发与生产环境 性能优化配置 - HMR - 缓存 -tree shaking - 代码分割 - 懒加载 - 预加载 - PWA - 多进程打包 - externals - dll(代码