我的代码如下
created () {
EventBus.$on('change',this.formated);
},
props: ['applicants',],
data() {
return {
values: [],
}
},
methods : {
formated (item) {
//some code here
}
}
我在另一个组件中有一些复选框。我试图在这个组件中捕获这些复选框的值。在捕获这些值后,我想过滤道具applicants
。我想找出哪些applicants
具有复选框的值。然后我想将它们传递给values[]
。然后我想在HTML中迭代这些值。
答案 0 :(得分:1)
阅读评论后,我相信这是你需要做的。您可以使用prop以及format()方法中通过事件总线传递的数据。您需要将两者结合起来并将它们设置为值。我在下面粘贴了代码。但是,不知道两个对象的结构,我无法帮助你。这只是简单的JavaScript。所以你可能需要像Object.assign或.filter或.map方法这样的东西。
created () {
EventBus.$on('change',this.formatted);
},
props: ['applicants'],
data() {
return {
values: [],
}
},
methods : {
formatted (item) {
this.applicants // access the data from your prop
item // access the data from your event bus
this.values = someCombinationOf(this.applicants, item)
}
}
从formatted()函数设置值后,您可以迭代它(例如使用v-for)。每当通过事件总线发出事件时,这将更新您的组件。每当道具改变时,组件也将更新。