webpack
打包vue
应用时,在正式环境下去除警告等信息vue
中检测运行环境示例vue
在运行的时候会检测NODE_ENV
是否为production
,从而肯定是否要进行警告的显示,例以下面是entry-runtime-with-compiler
中的一段代码:javascript
/* istanbul ignore if */ if (el === document.body || el === document.documentElement) { process.env.NODE_ENV !== 'production' && warn( `Do not mount Vue to <html> or <body> - mount to normal elements instead.` ) return this }
这一段代码中检测了vue
实例是不是绑定到了html
或body
元素上,若是绑定在了这两个元素上,而且运行环境不是生成环境就会显示下边的警告信息。html
webpack
打包时指定NODE_ENV
从而不显示警告等信息有一些
log
信息的输出建议使用uglifyjs
进行代码压缩,在压缩的时候指定不输出log
信息。vue
webpack
的相关配置以下java
module.exports = { ... plugins: [ new webpack.DefinePlugin({ 'process.env': { NODE_ENV: '"production"' } }) ] ... }
运行了,结果没什么用,仍是有输出通过一番搜索以后发现:webpack
vue.js
,而在正式环境使用vue.min.js
webpack
的,则应该使用vue.common.js
进行替代,个人相关配置以下:module.exports = { ... resolve: { alias: { vue: 'vue/dist/vue.common.js', } } ... }
而后再进行打包,运行以后发现就没有警告等信息了。web