亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁/技術(shù)文章
文章詳情頁

Vue 重置data的數(shù)據(jù)為初始狀態(tài)操作

瀏覽:6日期:2022-09-30 18:53:30

在某些情況下,需要重新使用data中的數(shù)據(jù),但是data中的數(shù)據(jù)已經(jīng)被各種表單、變量等賦值,那么怎么重置data的值呢?

1. 逐個賦值

...data() { return { name: ’’, sex: ’’, desc: ’’ }}...// 逐個賦值this.name = ’’this.sex = ’’this.desc = ’’

這個方法比較笨,當然也可以實現(xiàn)效果,但是一個一個去重新賦值比較麻煩而且代碼看起來也會比較亂。

下面這個方法肯定是你喜歡的,一行代碼搞定~

2. 使用Object.assign()

MDN關(guān)于該方法的介紹:Object.assign() 方法用于將所有可枚舉屬性的值從一個或多個源對象復(fù)制到目標對象。它將返回目標對象。

用法: Object.assign(target, ...sources)

第一個參數(shù)是目標對象,第二個參數(shù)是源對象,就是將源對象屬性復(fù)制到目標對象,返回目標對象

其中就是將一個對象的屬性copy到另一個對象

vue中:

this.$data 獲取當前狀態(tài)下的data

this.$options.data() 獲取該組件初始狀態(tài)下的data

所以,下面就可以將初始狀態(tài)的data復(fù)制到當前狀態(tài)的data,實現(xiàn)重置效果:

Object.assign(this.$data, this.$options.data())

當然,如果你只想重置data中的某一個對象或者屬性:

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

擴展

Object.assign(target, ...sources) 方法還可以用來合并對象:

const o1 = { a: 1 };const o2 = { b: 2 };const o3 = { c: 3 };const obj = Object.assign(o1, o2, o3);console.log(obj); // { a: 1, b: 2, c: 3 }console.log(o1); // { a: 1, b: 2, c: 3 }, 注意目標對象自身也會改變。

如果對象中含有相同屬性,取最后一個屬性:

const o1 = { a: 1, b: 1, c: 1 };const o2 = { b: 2, c: 2 };const o3 = { c: 3 };const obj = Object.assign({}, o1, o2, o3);console.log(obj); // { a: 1, b: 2, c: 3 } 屬性取最后一個對象的屬性

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 国产一区二区三区福利 | 久久精品嫩草影院免费看 | 亚洲第一成人影院 | 欧美成人a大片 | 欧美一级特黄aa大片视频 | 综合久久综合 | 黄色网址在线播放 | 青青自拍| 美国黄色片视频 | 日本成a人片在线观看网址 日本成人一区二区 | 亚洲一区免费在线 | 91久久香蕉国产线看 | 91视频 - 88av| 亚洲第一视频在线观看 | 日韩欧美亚洲中字幕在线播放 | 91久久另类重口变态 | 国产午夜免费视频片夜色 | 亚洲美女免费视频 | 99久久国产免费中文无字幕 | www.污网站| 日本69色视频在线观看 | 亚洲欧洲日产国码天堂 | www.国产精品.com | 全免费a级毛片免费看视频免 | 国产精品久久久久9999 | 亚洲综合自拍 | 国模偷拍在线观看免费视频 | 亚洲欧洲日产国码天堂 | 国产 视频 p| 免费网站你懂的 | 一级黄色在线观看 | 网友自拍视频在线观看 | 亚洲色图欧美视频 | 欧美日韩一区二区三区免费 | 三级免费黄色片 | 你懂得2019在线观看网站 | 99香蕉国产| 在线成年视频免费观看 | 国产女主播真实视频在线观看 | 精品国产一区二区三区香蕉沈先生 | 国产精品嫩草影院99av视频 |