亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

vue 組件通信的坑

標簽:
Vue.js

             

   

vue 组件通信的坑

当传输的数据为引用类型时,一定要注意,有可能改了子组件的数据,父组件的数据也发生了改变

例子:

如给子组件传输数据:   dialogInfo

1

直接将行数据row(对象)赋值给: dialogInfos(dialogInfo)

1

在子组件中取值赋值: dialogInfo => ruleForm

11

但是问题来了!虽然经过了怎么几次赋值!但是 父组件row对象 与 子组件ruleFrom 仍然是一个对象, 他们在底层引用的是一个地址 => 一个对象

问题表现如下:

修改子组件数据:(ruleFrom.share_subtitle)

1

prop数据也变化了:(dialogInfo.form.share_subtitle)

1

父组件的行数据也变了:

1

以上问题的表明虽然 父 子 组件 的不同数据如果引用同一来源的引用数据,

虽然 用的是 不同 的 vue 观察者 , 然而 他们本质 却是 同一个 对象 ,

修改一个会改变其他的, 这会导致错误,正常情况子组件不能这样改变父组件的值!

解决方法:

最简单的方法是拷贝新的对象,赋值给子组件,做好隔离!

1

靳肖健      jxjweb.top


點擊查看更多內容
1人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
Web前端工程師
手記
粉絲
76
獲贊與收藏
1245

關注作者,訂閱最新文章

閱讀免費教程

感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消