亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue或react項目生產環境去掉console.log的操作

發布時間:2020-10-15 13:46:20 來源:腳本之家 閱讀:586 作者:明月松江 欄目:開發技術

在開發環境寫了很多console.log/info/debug,在生產環境需要去掉這些console。

如果手動刪除未免也太累了,再說以后想再開發還得重新寫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項目的時候發現它的webpack的配置,也可以使用terser去掉console.log。

webpack.config.prod.js:

module.exports = {
 optimization:{
 minimizer: [
 new TerserPlugin({
  sourceMap:false,
 terserOptions:{
 compress:{
  drop_console : true
 }
 }
 })
 ]
 }
}

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

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

vue或react項目生產環境去掉console.log的操作

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

data(){
 return {
 cards:[]
 }
}
<div v-for="card in cards" :key="card.id">
 <img src="xxx" />
 <div v-if="card.isShow" @click="cacelHandler(card)">
 <img src="xxxx" />
 </div>
</div>

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

當我點擊按鈕的時候,把card.isShow 的值變為 false。

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

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

cacelHandler(card){
 card.isShow = false;
 this.$forceUpdate();
}

vue官方對$forceUpdate的解釋是:

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

以上這篇vue或react項目生產環境去掉console.log的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

五常市| 思南县| 曲麻莱县| 城口县| 米林县| 安康市| 枝江市| 郯城县| 高碑店市| 边坝县| 黑河市| 桐梓县| 崇仁县| 三门峡市| 同德县| 涪陵区| 宁强县| 鲜城| 东乌珠穆沁旗| 民丰县| 桐庐县| 大洼县| 湖南省| 汝阳县| 防城港市| 蕉岭县| 长丰县| 庆元县| 大厂| 凤翔县| 民权县| 晋宁县| 泰州市| 乌恰县| 龙海市| 凤阳县| 瓮安县| 化德县| 大同县| 河曲县| 南宁市|