Vue中watch和methods兩種屬性的作用
vue中watch是專門用來觀察和響應(yīng)vue實例上的數(shù)據(jù)變動的,語法如下:
watch: {
被監(jiān)聽的數(shù)據(jù): {
handler(數(shù)據(jù)改變后的值, 數(shù)據(jù)改變之前的值) {
相關(guān)代碼邏輯
}
}
}
- 被監(jiān)聽的數(shù)據(jù):data中定義的數(shù)據(jù);
- 數(shù)據(jù)改變后的值:新值;
- 數(shù)據(jù)改變之前的值:舊值;
1、普通數(shù)據(jù)類型實例
<input type="text" v-model="userName"/> //監(jiān)聽當(dāng)userName值發(fā)生變化時觸發(fā) watch: { userName (newName, oldName) { console.log(newName) } } //或 watch: { userName: { handler (newName, oldName) { console.log(newName) }, immediate: true } }
注意:當(dāng)值第一次綁定的時候不會執(zhí)行監(jiān)聽函數(shù),只有當(dāng)值改變的時候才會執(zhí)行。如果我們想在第一次綁定的時候執(zhí)行此監(jiān)聽函數(shù),則需要設(shè)置immediate為true。
2、對象類型實例
<input type="text" v-model="cityName.name" /> data (){ return { cityName: {name:'北京'} } }, watch: { cityName: { handler(newName, oldName) { console.log(newName) }, immediate: true, deep: true } }
注意:當(dāng)需要監(jiān)聽對象的改變時,此時就需要設(shè)置deep為true。
vue中methods是方法屬性,在里面定義方法,語法如下:
methods:{
//在此處定義方法
方法名1() {
},
方法名2() {
}
}
實例
<button class="btn btn-primary" @click="doAdd">添加</button> methods : { //這里面定義了一個doAdd的方法. doAdd() { console.log(“hello”); //通過axios發(fā)送請求 axios.get(url).then(response =>{ console.log(response.data); }); } } }
到此這篇關(guān)于Vue中watch和methods兩種屬性的作用的文章就介紹到這了,更多相關(guān)Vue watch和methods內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于antd-vue?a-menu菜單綁定路由的相關(guān)問題
這篇文章主要介紹了關(guān)于antd-vue?a-menu菜單綁定路由的相關(guān)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10Vue無后端配合實現(xiàn)導(dǎo)出功能的示例代碼
這篇文章主要為大家詳細(xì)介紹了Vue如何在無后端配合的情況下實現(xiàn)導(dǎo)出功能,文中的示例代碼簡潔易懂,有需要的小伙伴可以跟隨小編一起了解一下2024-01-01VUEJS實戰(zhàn)之利用laypage插件實現(xiàn)分頁(3)
這篇文章主要為大家詳細(xì)介紹了VUEJS實戰(zhàn)之修復(fù)錯誤并且美化時間,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-06-06