将vue.js组件子级中的对象或值发送给父级通信

时间:2019-03-06 05:01:24

标签: vue.js vue-component

我想知道哪种方法是向vue组件中的父级发送数据的更好方法。从父级到子级,我传递prop对象,但从子级到$emit传递给父级。我应该传递对象还是价值?例如:{ product }product.id,而且我还必须像事件监听器上的{ product }一样重用product.price中的某些数据。我应该使用什么?发出一个对象或只是一个值,然后在侦听器函数中循环和条件?

2 个答案:

答案 0 :(得分:1)

只需在此处使用两种方式同步:

@product.sync="product"

在孩子中:

this.$emit('update:product', product)

每当您更改产品的属性时。

答案 1 :(得分:0)

在通过引用传递的情况下不起作用。我的意思是它可以用,但是Vue尖叫着不要直接改变道具...

电影是对象,体裁是数组。子组件道具和事件

道具:{     类型:{       类型:数组,       默认(){         返回[]       }     }   }

...

this。$ emit('changeGenreList',this.genres)

我必须使用slice()制作此数组的本地副本,然后发出此副本。