vue恢復(fù)初始數(shù)據(jù)this.$data,this.$options.data())

vue恢復(fù)初始數(shù)據(jù)

在vue開(kāi)放中我們會(huì)遇到一個(gè)頁(yè)面或者一個(gè)彈窗讓他恢復(fù)到原始數(shù)據(jù)的情況,如果數(shù)據(jù)不多我們可以重設(shè)賦值一下,但數(shù)據(jù)較多的情況下會(huì)比較麻煩,這時(shí)候可以用到

this.$data,this.$options
  1. this.$options.data() 這個(gè)是vue原始的數(shù)據(jù),就是你頁(yè)面剛加載時(shí)的data
  2. this.$data 這個(gè)是現(xiàn)在階段的vue數(shù)據(jù),就是你改變data的數(shù)據(jù)

下面是一個(gè)彈窗的數(shù)據(jù),在彈窗關(guān)閉時(shí)恢復(fù)數(shù)據(jù),這里使用Object.assign將原始數(shù)據(jù)和現(xiàn)在的數(shù)據(jù)融合,會(huì)將改變的數(shù)據(jù)重置到初始狀態(tài)

watch: {
    ShowModal(val) {
      if (!val) {
        Object.assign(this.$data, this.$options.data())
      }
    }
  }

如果只想讓一個(gè)數(shù)據(jù)恢復(fù)到以前

this.base = this.$options.data().base

原文鏈接:https://blog.csdn.net/weixin_44705688/article/details/103069192

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容