日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > vue >内容正文

vue

console react 去除_vue或react项目生产环境去掉console.log的操作

發(fā)布時間:2023/12/3 vue 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 console react 去除_vue或react项目生产环境去掉console.log的操作 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在開發(fā)環(huán)境寫了很多console.log/info/debug,在生產(chǎn)環(huán)境需要去掉這些console。

如果手動刪除未免也太累了,再說以后想再開發(fā)還得重新寫console。

事實上webpack提供了刪除console的插件,在vue-cli3里面是這樣用的:

首先安裝terser-webpack-plugin

npm install terser-webpack-plugin -D

然后在vue.config.js文件里寫插件的配置:

module.exports = {

configureWebpack: (config)=>{

if(process.env.NODE_ENV === 'production'){

config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true

}

}

}

2020.1.14補充:

上面的寫法是直接修改webpack的配置,vue官方文檔里說也可以返回一個將會被合并的對象,寫法如下:

const TerserPlugin = require('terser-webpack-plugin')

module.exports = {

configureWebpack: (config)=>{

if(process.env.NODE_ENV === 'production'){

// 返回一個將會被合并的對象

return {

optimization:{

minimizer: [

new TerserPlugin({

sourceMap:false,

terserOptions:{

compress:{

drop_console : true

}

}

})

]

}

}

}

}

}

2020.4.22補充:

最近在做react項目的時候發(fā)現(xiàn)它的webpack的配置,也可以使用terser去掉console.log。

webpack.config.prod.js:

module.exports = {

optimization:{

minimizer: [

new TerserPlugin({

sourceMap:false,

terserOptions:{

compress:{

drop_console : true

}

}

})

]

}

}

補充知識:vue中遇到數(shù)據(jù)更新但是頁面沒有更新的情況

今天在項目中遇到了一個需求,點擊改變數(shù)據(jù),之后在頁面上立即看到更改后的數(shù)據(jù)。

首先,如上圖的黃色按鈕是通過v-for 循環(huán)產(chǎn)生的,data()里只有數(shù)據(jù)cards:[ … ],cards的值是通過調(diào)用后臺接口拿到的。

data(){

return {

cards:[]

}

}

這個頭像下方的黃色按鈕,是根據(jù)card.isShow的truthy 決定顯示或不顯示。

當(dāng)我點擊按鈕的時候,把card.isShow 的值變?yōu)?false。

可是頁面上的黃色按鈕還在,并沒有如我期望的那樣消失。

通過查詢資料得知,使用this.$forceUpdate()可以重新渲染組件,這樣就可以得到想要的效果。

cacelHandler(card){

card.isShow = false;

this.$forceUpdate();

}

vue官方對$forceUpdate的解釋是:

$forceUpdate可以迫使 Vue 實例重新渲染。它僅僅影響實例本身和插入插槽內(nèi)容的子組件,而不是所有子組件。

以上這篇vue或react項目生產(chǎn)環(huán)境去掉console.log的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

總結(jié)

以上是生活随笔為你收集整理的console react 去除_vue或react项目生产环境去掉console.log的操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。