在vue中使用watch監測數據改變的deep:true,和immediate:true

在項目中,有時候檢測一個變量的值是否反升了變化。一般使用的watch或者使用低效的循環判斷。 在次vue中給咱們設置了深度監測數據繁盛變化的方法。vue

這是一個使用vuex中的一個數據,settingData.在實際中要檢測其值發生改變以後要讓一個button按鈕的disabled屬性移除。咱們能夠使用相似的方式,可是這樣寫的時候必須使用handler函數。

還有immediate:true,表明watch裏面聲明瞭以後會立馬執行handler裏面的函數。執行相應的邏輯。 若是不設置這些屬性能夠使用循環的方式。 1.如果檢測的是對象,使用循環的時候能夠將其轉換成數組。(簡單的對象處理) 1.使用Object.keys(obj)將其對象中的key拿出來放進一個數組中 a.for...in... b.[].slice.call(object) 2.而後使用循環將對相應的值存儲在另外一個數組中。 3.而後根據業務邏輯處理相應的數組es6

2.使用es6語法糖的方式

1.數組轉對象
複製代碼

2.對象轉數組
    Array.from(object)
複製代碼

複雜的問題總有簡單的思路,遇到問題先思考出路而後寫代碼。vuex

相關文章
相關標籤/搜索