vue 解決computed修改data數(shù)據(jù)的問題
最近在做項(xiàng)目的時候遇見一個問題,computed修改data數(shù)據(jù)的時候會報錯。報錯的大概意思是,不可以修改data數(shù)據(jù)的屬性值。查了一些答案,最終解決辦法是需要用到set和get。看代碼:
data () {
return {
fold: false
}
}
我想修改fold的值,如果不用get和set就會報錯?。?!
computed:{
listShow: {
get: function () {
if (!this.totalCount) {
return false
}
return this.fold
},
set: function () {
if (!this.totalCount) {
this.fold = false
return false
}
}
}
get里面的值可以在頁面加載或者數(shù)據(jù)改變的時候?qū)崟r更新,但是set方法里面的如果想起作用,你需要調(diào)用listShow才會起作用。
看代碼:
methods: {
toggleList () {
if (!this.totalCount) {
return
}
this.listShow = false//這里需要調(diào)用一下
this.fold = !this.fold
},
}
如果不調(diào)用的情況下,邏輯都寫到get里面,就可以實(shí)時更新了。
以上這篇vue 解決computed修改data數(shù)據(jù)的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue props 單項(xiàng)數(shù)據(jù)流實(shí)例分享
vue3點(diǎn)擊出現(xiàn)彈窗后背景變暗且不可操作的實(shí)現(xiàn)代碼
vue cli3.0打包上線靜態(tài)資源找不到路徑的解決操作
elementui導(dǎo)出數(shù)據(jù)為xlsx、excel表格

