Javascript 将Vue事件处理程序分配给方法';s返回值
问题:我需要将vue组件的事件处理程序设置为等于另一个方法的返回值 此JavaScript在单击时运行Javascript 将Vue事件处理程序分配给方法';s返回值,javascript,vue.js,vuejs2,vue-component,Javascript,Vue.js,Vuejs2,Vue Component,问题:我需要将vue组件的事件处理程序设置为等于另一个方法的返回值 此JavaScript在单击时运行 方法在单击时调用 ... 函数addToCount(){ 计数+1 } 但这将在单击时调用getAddToCountHandler,而不是addToCount ... 函数getAddToCountHandler(){ 返回函数addToCount(){ 计数+1 } } 下面是我试图做的,一些变量存储在闭包中 ... 函数getHandler(param){ 设storedPa
方法在单击时调用
...
函数addToCount(){
计数+1
}
但这将在单击时调用getAddToCountHandler
,而不是addToCount
...
函数getAddToCountHandler(){
返回函数addToCount(){
计数+1
}
}
下面是我试图做的,一些变量存储在闭包中
...
函数getHandler(param){
设storedParam=param
返回函数(){
存储参数+=1
console.log(storedParam)
}
}
您应该通过添加()
如下方式运行返回函数:
<input type="button" @click="getAddToCountHandler()()">
let app=new Vue({
el:“应用程序”,
数据:函数(){
返回{
计数:0
}
},
方法:{
getAddToCountHandler(){
让那=这;
返回函数addToCount(){
console.log(that.count)
that.count=that.count+1
}()
}
}
})
{{count}}
对不起,Boussadjra,我的问题不完整。我编辑它是为了为您添加上下文。但确切的问题是什么?查看我添加到问题中的最后一个脚本,我希望在单击处理程序的整个生命周期内保持一个状态。给出答案后,每次单击按钮时,都会重新创建该闭包和处理程序,并重置闭包的状态。
function getAddToCountHandler () {
return function addToCount () {
count + 1
}()
}