vue之watch的用法
最近在做一個H5的專案。 需求是當使用者在輸入完了手機號和驗證碼之後,登入按鈕才可以點選。
在沒有使用vue
之前,我們可能是通過input
的change
事件來判斷,使用者是否輸入了內容,然後修改按鈕的狀態。現在有了vue
,就省事了很多,我們只需要在watch中,監聽資料模型的值改變即可。
<div id="app" class="login_area">
<div class="form_line">
<label>二次密碼:</label>
<input v-model="passw2" placeholder="請再次輸入密碼" />
</div>
</div>
data: {
passw2: '', // 第二次 輸入的密碼
},
watch: {
passw2: function(curVal,oldVal){
console.log(curVal);
},
},
但是如果,監聽的是一個物件呢?
vue-watch文件中介紹了一個deep屬性。
發現物件內部值的變化。那麼實際怎麼做呢?
<div id="app" class="login_area">
<div class="form_line">
<label>使用者名稱:</label>
<input v-model="info.name" placeholder="請輸入使用者名稱" />
</div>
<div class="form_line">
<label>密碼:</label>
<input v-model="info.passw" placeholder="請輸入密碼" />
</div>
</div>
var app = new Vue({
el: '#app',
data: {
info: {
name: '', // 使用者名稱
passw: '' // 密碼
},
},
watch: {
info: { // 這監聽物件值的改變 和上面的不一樣。
handler(curVal,oldVal){
console.log(curVal);
},
deep: true,
},
},
})
關於watch這個在實際專案中確實很好用,我們要注意的是,在監聽屬性和物件的時候是有些差異的。這個也是當時在需要監聽物件時候我是懵逼了。我總不能這麼寫:
info.name: function(curVal,oldVal){
console.log(curVal);
},
後來在看文件後才知道還有deep
選項。
相關文章
- 深入解析Vue中watch的高階用法Vue
- Vue.js中 watch 的高階用法Vue.js
- 詳解Vue中watch的高階用法Vue
- vue之computed和watchVue
- Vue.js中偵聽器watch 的高階用法Vue.js
- vue 3 學習筆記 (六)——watch 、watchEffect 新用法Vue筆記
- Vue中computed、methods和watch之間的區別Vue
- [Vue] Watch and WatchEffectVue
- Vue computed 與 watchVue
- 根據除錯工具看Vue原始碼之watch除錯Vue原始碼
- vue watch陣列引發的血案Vue陣列
- Vue中computed的本質—lazy WatchVue
- vue中computed/method/watch的區別Vue
- Vue slot的用法Vue
- 【VUE】vue-router的基本用法Vue
- vue中methods,computed,watch方法的區別Vue
- vue2的監聽watch小爆料Vue
- 手摸手帶你理解Vue的Watch原理Vue
- vue例項中watch屬性的使用Vue
- vue2.x版本中computed和watch的使用入門詳解-watch篇Vue
- vue原始碼中computed和watch的解讀Vue原始碼
- Vue中computed和watch的區別(轉載)Vue
- vue中echarts的動態渲染資料watchVueEcharts
- vue slot 用法Vue
- Vue 元件用法Vue元件
- vue --ref用法Vue
- vue3_defineExpose的用法Vue
- vue watch 和 computed 區別與使用Vue
- vue2-使用watch監聽路由的變化Vue路由
- Vue:watch 監聽多個屬性值的方法Vue
- Vue 基礎自查——watch、computed和methods的區別Vue
- Vue中scoped與CSSModules的用法VueCSSSSM
- vue中 關於$emit的用法VueMIT
- vue元件化中slot的用法Vue元件化
- 遨翔在知識的海洋裡----(css之vue中sass基本用法)CSSVue
- Vue3.5新增的baseWatch讓watch函式和Vue元件徹底分手Vue函式元件
- Vue_watch深度監聽的正確開啟方式Vue
- Vue中watch、computed與methods的聯絡和區別Vue