亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請各位大佬指點!Vue2.x里data里的值改變filter不斷調用的問題跪求!

請各位大佬指點!Vue2.x里data里的值改變filter不斷調用的問題跪求!

Helenr 2019-11-03 15:40:55
問題如題,vue2.x里data里的屬性導致其它data屬性的filter不斷調用的問題(下面的代碼控制臺會不斷打出---filter)。這是bug,還是有其它配置可以設置?引用https://segmentfault.com/q/1010000007361021?_ea=1323594提問Document{{str}}={{str|myUppercase}}{{index}}={{myIndex}}varvm=newVue({el:"#app",data:{index:0,myIndex:0,str:'hello'},mounted:function(){varvm=this;setInterval(function(){vm.index++;},200);},/*created:function(){varvm=this;setInterval(function(){vm.index++;},200);},*/filters:{myUppercase:function(value){console.log('---filter');if(!value)return'';value=value.toString();returnvalue.toUpperCase();}},})
查看完整描述

2 回答

?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

在vue中,只有計算屬性可以幫助我們做緩存,方法和過濾器都不會。
所以:在vue中,多使用計算屬性;不要在模版中泛濫多使用過濾器和方法執行
                            
查看完整回答
反對 回復 2019-11-03
?
慕標5832272

TA貢獻1966條經驗 獲得超4個贊

如果在代碼中加入updated和beforeUpdate這兩個生命周期鉤子函數,可以看到在myIndex變化時,這兩個鉤子函數會被調用。原因是:當data被修改時會導致虛擬DOM重新渲染和打補丁,因此應用會更新。大多數情況下都是使用計算屬性computed來代替。關于updated和beforeUpdate的解釋,可以參照下官方文檔:https://cn.vuejs.org/v2/api/#...。
                            
查看完整回答
反對 回復 2019-11-03
  • 2 回答
  • 0 關注
  • 291 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號