uniapp 打包无法去除console
使用的是vue3 vite ts uniapp 打包h5还是无法去除console
不过我目前使用的是window.console.log = function() { }//开发环境去除console.log 这个方法感觉不是很好
有没有大佬说说为什么vue.config.js 在uniapp中无法去除console
可uniapp官方的写着这个可以去除
官网案例 但打包无效
module.exports = {
chainWebpack: (config) => {
// 发行或运行时启用了压缩时会生效
config.optimization.minimizer('terser').tap((args) => {
const compress = args[0].terserOptions.compress
// 非 App 平台移除 console 代码(包含所有 console 方法,如 log,debug,info...)
compress.drop_console = true
compress.pure_funcs = [
'__f__', // App 平台 vue 移除日志代码
// 'console.debug' // 可移除指定的 console 方法
]
return args
})
}
}
你在使用vue.config.js时需要注意一点,uniapp的webpack配置是在uni-app/vue.config.js中进行配置的,而不是在根目录下的vue.config.js。因此,你需要将配置写在uni-app/vue.config.js文件中才能生效。你可以尝试将你的代码复制到uni-app/vue.config.js文件中,然后重新打包,看看是否生效。
另外,使用window.console.log = function() { }这种方法去除console.log并不是一个好的做法,因为这样会影响到全局的console对象,如果其他地方需要使用console.log打印日志,就会出现问题。建议还是使用webpack配置去除console,或者在代码中手动注释掉console.log语句。