Vuejs2 从子组件插槽单击时运行方法?

Vuejs2 从子组件插槽单击时运行方法?,vuejs2,Vuejs2,我有一个第三部分组件,它接受一个插槽,在这个插槽中,我想像这样放置一个输入: <input type="text" @click="this.run"> 在使用第三方组件的父组件上,我设置了方法: methods: { run() { console.log('run'); }, }, 哪里出错了?该模板将被编译为渲染方法。 因此,您不应该使用此,因为它是隐式的 <input type="text" @click="run">

我有一个第三部分组件,它接受一个插槽,在这个插槽中,我想像这样放置一个输入:

<input type="text" @click="this.run">
在使用第三方组件的父组件上,我设置了方法:

methods: {

    run() {
        console.log('run');
    },
},

哪里出错了?

该模板将被编译为渲染方法。 因此,您不应该使用
,因为它是隐式的

 <input type="text" @click="run">


应该可以正常工作

尝试不使用
this
和您的方法作为
run:function(){…}
puelo-这可以工作,但为什么?vue js按名称匹配方法,或者
this
将方法调用放入错误的范围。无论是哪种方式,我认为您都不需要在任何事件处理程序上放置
这个
run(){}
ES6
中完全允许的语句。因此,只要您正确设置了transpiler,您就可以了。
 <input type="text" @click="run">