Javascript Vue渲染函数单击处理程序不工作

Javascript Vue渲染函数单击处理程序不工作,javascript,vue.js,Javascript,Vue.js,我正在Vue中使用render函数: export default { name: 'TButton', render (h) { return h('button', { 'class': { btn: true } }, this.$slots.default) } } 由于某些原因,它不适用于Vue指令v-on:click: t-button.white(@click="alert()") Send // PUG template 虽然这样做有

我正在Vue中使用
render
函数:

 export default {
    name: 'TButton',
    render (h) {
      return h('button', { 'class': { btn: true } }, this.$slots.default)
    }
  }
由于某些原因,它不适用于Vue指令
v-on:click

t-button.white(@click="alert()") Send // PUG template
虽然这样做有效:

span(@click="alert()")
  t-button.white Send // PUG template

虽然文档中没有明确介绍这一点,但据我所知,事件不会自动绑定到功能呈现组件。
一个选项是手动传入所有默认侦听器

Vue.component('sample'{
渲染:函数(createElement){
返回createElement('按钮'{
关于:这个。$listeners
},这是($slots.default)
}
})
新Vue({
el:“#应用程序”,
方法:{
foo(){
console.log('foo called')
}
}
})

酒吧