午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

解決vue watch數(shù)據(jù)的方法被調(diào)用了兩次的問題

瀏覽:176日期:2022-11-04 18:59:17

背景:

路由結(jié)構(gòu)/video/1.mp4,即/video是父路由,/1.mp4是/video的動(dòng)態(tài)子路由,在/video父路由中會(huì)通過url的params獲取視頻信息,即通過/1.mp4獲取對應(yīng)的視頻完整信息,然后通過props傳到動(dòng)態(tài)子路由中,然后子路由通過接受到的視頻對象,進(jìn)行展示

問題:

當(dāng)路由切換時(shí),即當(dāng)我點(diǎn)擊其他視頻時(shí),導(dǎo)致動(dòng)態(tài)子路由變化時(shí),我監(jiān)聽了/video父路由的變化并重新根據(jù)url的params獲取視頻對象,并自動(dòng)通過props傳入子路由中,我在子路由中通過watch 視頻對象來進(jìn)行一些操作,結(jié)果

watch: { video () { console.log('test') }}

test被打印了兩次,通過一番查找,才發(fā)現(xiàn),當(dāng)子路由切換時(shí),父路由/video中的data數(shù)據(jù)都會(huì)被初始化為默認(rèn)值,所以導(dǎo)致video對象變化了兩次,一次是因?yàn)槌跏蓟恢刂脼槟J(rèn)值空對象,一次是請求后的正確數(shù)據(jù)

結(jié)局:

將video對象存到vuex中,然后父路由將vuex中的video對象傳給子路由就行了

補(bǔ)充知識(shí):vue watch一個(gè)對象或數(shù)組時(shí),newvalue和oldvalue一樣

在官方的代碼改寫了一下,當(dāng)深度watch一個(gè)對象時(shí),newval和oldval的值為什么是相等的呢?

var vm = new Vue({ data: { a: 1, c:{ c1:1, c2:2 } }, watch: { ’a’: function (val, oldVal) { console.log(val, oldVal,(val== oldVal)) }, // 方法名 ’b’: ’someMethod’, // 深度 watcher ’c’: { handler: function (val, oldVal) { console.log(val, oldVal,(val== oldVal)) }, deep: true } }}) vm.a = 2 vm.c.c1 = 2

和深度無關(guān),而是在修改(不是替換)對象或數(shù)組時(shí),舊值將與新值相同,因?yàn)樗鼈兯饕粋€(gè)對象/數(shù)組。Vue 不會(huì)保留修改之前值的副本。

以上這篇解決vue watch數(shù)據(jù)的方法被調(diào)用了兩次的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 成人网影 | 久久艹精品视频 | 老爷们的床奴np高h 好色婷婷 | 日韩精品一区二区三区中文在线 | 欧美一级视频在线观看 | 国产最新av| 日本中文字幕在线 | 日韩mv欧美mv国产网站 | 日韩精品久久久 | 日韩在线免费观看视频 | www.五月婷 | 日韩精品极品视频 | 国产精品久久久久久久9999 | 亚洲男人天堂2019 | 欧美精品一二区 | 精品久久久久久久久久久aⅴ | 青青av在线 | 中文有码在线观看 | 欧美成人久久久免费播放 | 中文字幕亚洲视频 | 久久亚洲视频 | 好吊妞视频一区二区三区 | 日韩精品一区在线观看 | 日本综合久久 | 黄色一二三区 | 99在线视频免费 | 亚洲国产欧洲 | 91国在线 | 免费不卡毛片 | 欧美日韩精品久久久 | 国产欧美在线观看视频 | 自拍 亚洲 欧美 | 欧美区一区二 | 日日干日日 | 国产精品波多野结衣 | 一级二级三级在线观看 | 亚洲图片欧美激情 | 特淫毛片| 午夜视频在线观看视频 | 偷拍亚洲视频 | 亚洲免费小视频 |