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
- this.$options.data() 這個(gè)是vue原始的數(shù)據(jù),就是你頁(yè)面剛加載時(shí)的data
- 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