Vue中watch和methods兩種屬性的作用
vue中watch是專門用來觀察和響應(yīng)vue實(shí)例上的數(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ù)類型實(shí)例
<input type="text" v-model="userName"/>
//監(jiān)聽當(dāng)userName值發(fā)生變化時(shí)觸發(fā)
watch: {
userName (newName, oldName) {
console.log(newName)
}
}
//或
watch: {
userName: {
handler (newName, oldName) {
console.log(newName)
},
immediate: true
}
}
注意:當(dāng)值第一次綁定的時(shí)候不會執(zhí)行監(jiān)聽函數(shù),只有當(dāng)值改變的時(shí)候才會執(zhí)行。如果我們想在第一次綁定的時(shí)候執(zhí)行此監(jiān)聽函數(shù),則需要設(shè)置immediate為true。
2、對象類型實(shí)例
<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í),此時(shí)就需要設(shè)置deep為true。
vue中methods是方法屬性,在里面定義方法,語法如下:
methods:{
//在此處定義方法
方法名1() {
},
方法名2() {
}
}
實(shí)例
<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)文章
vue-cli單頁面預(yù)渲染seo-prerender-spa-plugin操作
這篇文章主要介紹了vue-cli單頁面預(yù)渲染seo-prerender-spa-plugin操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08
Vue3中v-if和v-for優(yōu)先級實(shí)例詳解
Vue.js中使用最多的兩個指令就是v-if和v-for,下面這篇文章主要給大家介紹了關(guān)于Vue3中v-if和v-for優(yōu)先級的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09
vue.js實(shí)現(xiàn)標(biāo)簽頁切換效果
這篇文章主要介紹了vue.js實(shí)現(xiàn)標(biāo)簽頁切換效果,代碼簡單易懂,非常不錯,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-06-06

