在Vue.js的開發(fā)中,我們經(jīng)常會(huì)使用到disabled這個(gè)屬性來(lái)禁用一些按鈕或表單元素,比如:
<button :disabled="isDisabled">提交</button>
這段代碼中,isDisabled是一個(gè)Vue實(shí)例中的data變量,它決定了按鈕是否被禁用。但是,在實(shí)際開發(fā)中,我們可能需要在某些條件下切換按鈕的disabled狀態(tài),比如:
<button :disabled="shouldDisable">提交</button>
這段代碼中,我們使用了shouldDisable這個(gè)computed屬性來(lái)決定按鈕的狀態(tài)。那么,如何才能在shouldDisable的值發(fā)生改變時(shí),去更新按鈕的disabled狀態(tài)呢?
在Vue.js中,我們可以使用watch來(lái)監(jiān)聽shouldDisable這個(gè)屬性的變化:
watch: {
shouldDisable: function(newVal, oldVal) {
this.isDisabled = newVal;
}
}
這段代碼中,我們?cè)赩ue實(shí)例中添加了一個(gè)watch來(lái)監(jiān)聽shouldDisable的變化,每當(dāng)shouldDisable的值發(fā)生變化時(shí),我們就更新isDisabled的值,從而達(dá)到了實(shí)時(shí)更新按鈕狀態(tài)的目的。