Javascript 从子级到父级发出的事件不工作
Javascript 从子级到父级发出的事件不工作,javascript,vue.js,Javascript,Vue.js,sayHelloFromRoot方法驻留在根vue实例中,只包含一行: this.$emit('ontabselected', tab); 但只要我在选项卡之间切换,在vue devtools中我就会看到发出的事件,但在控制台中我看不到打印的hello。Answer 您应该收听上的事件,而不是,例如: sayHelloFromRoot(){ console.log('hello'); } 您不知道按钮如何触发事件,它被封装在按钮内。但是你知道它可以发出那个事件,你知道接口,你可以监听
sayHelloFromRoot
方法驻留在根vue实例中,只包含一行:
this.$emit('ontabselected', tab);
但只要我在选项卡之间切换,在vue devtools中我就会看到发出的事件,但在控制台中我看不到打印的hello。Answer
您应该收听
上的事件,而不是
,例如:
sayHelloFromRoot(){
console.log('hello');
}
您不知道按钮如何触发事件,它被封装在按钮内。但是你知道它可以发出那个事件,你知道接口,你可以监听它
如果事件在根目录中实现,则很难知道是哪个按钮。(谢谢@Ferrybig)
链接
sayHelloFromRoot(){
console.log('hello');
}
<div>
<tabs @ontabselected="sayHelloFromRoot">
<tab></tab>
<tab></tab>
</tabs>
</div>
<!-- MyFile.vue -->
<div>
<button @click="sayHello"/>
</div>
<div>
<button onclick="console.log('Hello')"/>
</div>