久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

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

瀏覽:2日期: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() 方法用于將所有可枚舉屬性的值從一個或多個源對象復制到目標對象。它將返回目標對象。

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

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

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

vue中:

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

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

所以,下面就可以將初始狀態(tài)的data復制到當前狀態(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)文章:
主站蜘蛛池模板: 99热在线观看免费 | 日韩一区二区三区在线 | 三级色黄| 亚洲精品视频在线看 | 亚洲欧美视频 | 日本免费视频 | 日韩激情视频一区二区 | 久久久国产精品入口麻豆 | 亚洲精品成人悠悠色影视 | 欧美日韩精品久久久久 | 午夜精品久久久久久久久久久久久 | 国产在线精品二区 | 亚洲情网站 | 中文字幕二区 | 欧美日韩国产高清视频 | 天天干天天操 | 国产综合区 | 欧美激情一区二区 | 久久成人视屏 | 国产黄色免费小视频 | 国产福利精品一区 | 美女91 | 久久久久久久久国产精品 | 免费看的毛片 | 国产麻豆乱码精品一区二区三区 | 特黄一级 | 成人午夜小视频 | 中文字幕高清 | 欧美在线免费 | 99久久精品免费看国产一区二区三区 | 99re视频精品 | 欧美日韩a | 色视频www在线播放国产人成 | 精品久久久久久亚洲精品 | 国产一区二区三区久久久久久 | 激情六月综合 | 亚洲一区高清 | 久久精品免费观看视频 | 中文字幕在线一区二区三区 | 欧美一区二区三区在线观看 | 久久黄色网 |