Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vue.js“;“发射事件”;don';不要鼓吹父母和祖父母的因素_Javascript_Vue.js_Events_Event Handling_Event Bubbling - Fatal编程技术网

Javascript Vue.js“;“发射事件”;don';不要鼓吹父母和祖父母的因素

Javascript Vue.js“;“发射事件”;don';不要鼓吹父母和祖父母的因素,javascript,vue.js,events,event-handling,event-bubbling,Javascript,Vue.js,Events,Event Handling,Event Bubbling,我想发出一个自定义事件,从孙子元素到子元素再到父元素。但它不起作用。即使直接在父元素或子元素上触发事件也不起作用 此处显示组件代码: Vue.component('parent'{ 模板:` 父按钮 手动触发试验 `, 方法:{ 测试(){ 警报(“测试正常”) } } }) Vue.component('子'{ 模板:` 子按钮 ` }) Vue.组件('孙子'{ 模板:` 孙子按钮 ` }) 新Vue({ el:“#示例应用程序”, }) 您可以尝试以下方法: Vue.componen

我想
发出一个自定义事件,从孙子元素到子元素再到父元素。但它不起作用。即使直接在父元素或子元素上触发事件也不起作用


此处显示组件代码:

Vue.component('parent'{
模板:`
父按钮
手动触发试验
`,
方法:{
测试(){
警报(“测试正常”)
}
}
})
Vue.component('子'{
模板:`
子按钮
` }) Vue.组件('孙子'{ 模板:` 孙子按钮 ` }) 新Vue({ el:“#示例应用程序”, })
您可以尝试以下方法:

Vue.component('parent'{
模板:`
父按钮
手动触发试验
`,
方法:{
测试(){
警报(“测试正常”)
}
},
挂载:函数(){
此.$on('testevent',()=>{
这个测试()
})
}
})
Vue.component('子'{
模板:`
子按钮
`, 挂载:函数(){ 此.$on('testevent',()=>{ 此.$parent.$emit('testevent')) }) } }) Vue.组件('孙子'{ 模板:` 孙子按钮 ` }) 新Vue({ el:“#示例应用程序”, })


这样事件就不会冒泡到根元素?您必须将事件传递给父元素,然后再从父元素转发到父元素,直到您将其放在您想要的位置为止?是的,事件只会在父元素之前出现。