Vue watch高階用法

2022-09-05 02:09:09 字數 902 閱讀 5223

很多時候,我們監聽乙個屬性,不會使用到改變前後的值,只是為了執行一些方法,這時可以使用字串代替

data:,

watch:,

methods:

}

總所周知,watch是在監聽屬性改變時才會觸發,有些時候,我們希望在元件建立後watch能夠立即執行一次。

可能想到的的方法就是在create生命週期中呼叫一次,但這樣的寫法不優雅,或許我們可以使用這樣的方法

data:,

watch:

},methods:

}

上面我們給入乙個物件

handler: 觸發監聽執行的方法(需要用到改變前後的值時,可換成函式)

immediate: 監聽開始之後被立即呼叫

在監聽乙個物件時,當物件內部的屬性被改變時,無法觸發watch,我們可以繼續使用物件的方式為其設定深度監聽

data:}}

},watch:

},methods:

}

設定deep為true後,無論巢狀多深,只要屬性值被改變都會觸發監聽。但這種方式開銷會較大,***會一層一層往下找,為每個屬性新增***。

如果我們只是監聽物件的某個屬性改變時,可以這樣做:

watch:

}

使用陣列可以設定多項,形式包括字串、函式、物件

data:,

watch:,

]},methods:,

sayname2(),

sayname3()

}

watc**檔:

vue watch的高階用法

watch 有乙個特點是,最初繫結的時候是不會執行的,要等到依賴改變時才執行監聽計算。如何你發現在載入頁面的時候watch執行了,基本上是這個被監聽物件在頁面載入的時候使用ajax獲取值後賦值產生的改變。那我們想要讓它繫結後立馬執行一次該怎麼辦?只需要加入immediate true即可。watch...

VUE watch監聽機制

1.watch 監聽機制 針對當前元件中的初始值來進行判斷的,即當進入頁面執行created方法時,就會觸發watch方法。2.watch如何在初始化之後使用 即在created方法執行時,不呼叫watch裡面的監聽邏輯 場景 要求首次進入頁面時,不觸發watch監聽事件改變資料,當頁面載入完成後,...

python高階用法 Python高階用法

python高階用法 三元表示式 x 10 y 20 print x if x y else y x 100 y 20 print x if x y else y 列表推導式和生成器 列表推導式 print i for i in range 10 print i 2 for i in range 1...