vue 處理數據變化但頁面不實時刷新問題


問題描述:
我的table表格里有一個下拉框,在層級比較多的情況下給下拉賦值,但是頁面未能實時刷新,我左思又想,左查右看,,急的電腦都要砸了但是還是出不來時。恰巧你刷到了我的這條博客,,那么恭喜你  你的電腦性命保住了          
第一個方案,當然是使用官方提供的方法啦,假如格式是下面這樣
data() {
  return() {
    groupslist: {
      groupId: '01111111113',
      name: '張三'
    }
  }
}
賦值 let newId = '2333332412' this.$set(this.groupslist, 'groupId', newId) 如果頁面數據刷新了則皆大歡喜,不好還得罵罵咧咧(狗頭)
第二個方案
簡單粗暴:
this.groupslist.groupslist = newId
this.$forceUpdate() // 強制刷新
究極解決方案:深拷貝數組,然后重新賦值
深拷貝方法
cloneCopy(target) {
    let result = Array.isArray(target) ? [] : {}
    if (target && typeof target === 'object') {
        for (let key in target) {
            if (typeof target[key] === 'object') {
                result[key] = cloneCopy(target[key])
            } else {
                result[key] = target[key]
            }
        }
        return result
    }
    return ''
}

賦值
let newArr = this.cloneCopy(this.groupslist)
然后你操作newArr ,比如循環賦值啊啥的 ,按你的功能需求操作
最后,this.groupslist = newArr 

這樣就結束了,你會說  我操(狗頭)

那種有用就用那種,希望你我都沒煩惱


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM