项目一般都会设置多个环境,比如分为开发、测试、生产环境
NODE_ENV = development //开发环境
NODE_ENV = test //测试环境
NODE_ENV = production //生产环境
然后想配置webpack,使得打包编译后的文件,处在测试环境和生产环境时,控制台不输出console,以及自动删除代码种的debugger
configureWebpack: (config) => {
Object.assign(config, {
resolve: {
extensions: ['.js', '.vue', '.json', '.ts', '.tsx'],
alias: {
'@': path.resolve(__dirname, './src'),
},
},
})
if (process.env.NODE_ENV !== 'development') {
Object.assign(config, {
mode: "production",
optimization: {
minimizer: [
new UglifyJsPlugin({
uglifyOptions: {
// 删除注释
output:{
comments: false
},
compress: {
drop_console: true, // 删除所有调式带有console的
drop_debugger: true,
pure_funcs: ['console.log'] // 删除console.log
}
}
})
],
}
})
}
},