色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Vue 重置data的數據為初始狀態操作

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

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

1. 逐個賦值

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

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

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

2. 使用Object.assign()

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

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

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

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

vue中:

this.$data 獲取當前狀態下的data

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

所以,下面就可以將初始狀態的data復制到當前狀態的data,實現重置效果:

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 } 屬性取最后一個對象的屬性

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

標簽: Vue
相關文章:
主站蜘蛛池模板: 日本成aⅴ人片日本伦 | 久久视频在线视频 | 成年人免费网站在线观看 | 92国产福利久久青青草原 | 日韩一级片网址 | 美女张开双腿让男人桶视频免费 | 国产a级一级久久毛片 | 在线 | 一区二区三区 | 欧美激情第一欧美在线 | 91精品日本久久久久久牛牛 | 久久99亚洲精品久久99 | 成人69视频在线观看免费 | 亚洲欧美精品一区 | 日韩欧美在线视频 | 九九大香尹人视频免费 | 久草资源在线视频 | 欧美三级欧美成人高清www | 国产一级一片免费播放 | 黄色三级网站在线观看 | 久草在线视频免费播放 | 久久综合婷婷香五月 | 免费五级在线观看日本片 | 久久性精品 | 国产精品亚洲欧美日韩区 | 一 级 黄 色 片生活片 | 国产成人免费视频精品一区二区 | 手机看片久久国产免费不卡 | 国产成人在线免费视频 | 亚洲成人在线视频播放 | 欧美一及 | 日韩中文字幕免费 | 91精品国产综合成人 | 国产成人lu在线视频 | 欧美一级大片免费观看 | 亚洲国产精品综合欧美 | 久久曰视频| 欧洲美女与男人做爰 | 欧美精品一区二区三区免费 | 18年大片免费在线观看 | 国产三级网站在线观看 | 亚洲国产精品大秀在线播放 |