第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

vue從列表中選擇一條數(shù)據(jù),如何做到每次點(diǎn)擊修改彈框都顯示數(shù)據(jù)的本值,而不是上次編輯后沒(méi)保存的值

vue從列表中選擇一條數(shù)據(jù),如何做到每次點(diǎn)擊修改彈框都顯示數(shù)據(jù)的本值,而不是上次編輯后沒(méi)保存的值

函數(shù)式編程 2018-07-23 09:33:42
父組件將列表中選中的這個(gè)object給彈窗組件傳進(jìn)去;彈窗組件內(nèi)代碼:js:props: ['object', 'visible'], computed: {   objectProp(){      return Object.assign({}, this.object)   } },html:   el-input v-model=objectProp.name只要我在外面不對(duì)選中的數(shù)據(jù)進(jìn)行切換,每次我打開這個(gè)彈窗,顯示的都是我上次修改的值;如果我選中一條數(shù)據(jù),第一次打開彈窗,顯示的是數(shù)據(jù)本值,假如數(shù)據(jù)本值是1,我修改為2,然后我關(guān)閉彈窗,不切換選中的數(shù)據(jù),再打開彈窗此時(shí)顯示的數(shù)據(jù)是2,而不是1,是上一次修改的值,我想讓他顯示為數(shù)據(jù)本值1,該怎么辦應(yīng)該如何解決比較優(yōu)雅呢,目前我的解決方式是,將visible是否顯示彈窗變量作為條件,每次這個(gè)值改變objectProp都會(huì)重新賦值一次,但是這樣的話,我打開彈窗和關(guān)閉彈窗都會(huì)給這個(gè)objectProp重新賦值,完全沒(méi)有必要,代碼很丑陋 objectProp(){    if(!this.visible){      return Object.assign({}, this.object)     }else{      return Object.assign({}, this.object)     }   },
查看完整描述

1 回答

?
達(dá)令說(shuō)

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

我的思路是,你子組件雙向綁定的那個(gè)值,不要直接用父組件傳給他的,彈窗打開的時(shí)候,做一個(gè)動(dòng)作,就是聲明一個(gè)新的值,然后把父組件的值傳給他(需要深復(fù)制),然后你子組件就直接綁定新聲明的那個(gè)值;然后彈窗關(guān)閉的時(shí)候,如果是保存關(guān)閉,那就把你新聲明的那個(gè)值傳給父組件,讓父組件去更新這個(gè)值,就是vue的自定義事件,$emit和$on;如果是未保存關(guān)閉,那么久不用做任何其他操作,直接關(guān)閉子組件就好了。

查看完整回答
反對(duì) 回復(fù) 2018-07-30
  • 1 回答
  • 0 關(guān)注
  • 6795 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)