父子,子父,非父子传值

https://blog.csdn.net/qq_37570945/article/details/81187972

https://www.cnblogs.com/wzfwaf/p/11280153.html

https://blog.csdn.net/qq_31173561/article/details/89498942

https://blog.csdn.net/a15180180753/article/details/80402976

https://blog.csdn.net/YYxiaobao0726/article/details/86604239

https://blog.csdn.net/wxl1555/article/details/84107969

Vue中父子之间怎么样子传值的,非父子之间呢?

父-->子

   1.pros传值法

   父组件代码:

子组件代码:

 

子-->父

    1.emit触发传值法

    父组件代码

子组件代码

非父子传值

    1.建立中间的事件bus总线

提示:遇到的问题:当我们还在页面first的时候,页面second还没生成,也就是页面second中的 created中所监听的来自于first中的事件还没有被触发。这个时候当你first中emit事件的时候,second其实是没有监听到的

解决方法:我们可以把A页面组件中的emit事件写在beforeDestory中去。因为这个时候,B页面组件已经被created了,也就是我们写的$on事件已经触发了,所以可以在beforeDestory的时候,$emit事件

而且在最后我们要在在second组件中的beforeDestroy中添加这句  bus.$off('get', this.myhandle)  来进行手动销毁$on

 

 

除了以上的组件传值方式,还有其他的吗?

1.我们可以在子组件中直接通过$parent获取父组件的值或者方法

父组件代码:

子组件代码:

 

2.我们可以在父组件中直接通过$children获取子组件的值或者方法

子组件代码:

父组件代码:

同时,我们也可以通过$ref来获取子组件中的值或则方法

父组件的代码:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值