Vuejs - 在输入时,运行 一个函数(但有延迟)
Vuejs - On input, run a function (but with a delay)
我有一个输入字段,v-on:input
它运行一个名为 activate
的方法,如下所示:
export default: {
data() {
return {
isHidden: true
}
},
methods: {
activate() {
this.isHidden = false;
}
}
}
isHidden
变成 on/off 一些图标(这个数据 属性 是什么并不重要;我只是用它来举例)。
所以目前,当用户执行 input
时,它会立即打开 activate
功能。有没有办法通过 setTimeout
延迟它?我已尝试执行以下操作,但它不起作用:
methods: {
setTimeout(function() {
activate() {
this.isHidden = false;
}
}, 500)
}
试试这个:
methods: {
activate() {
setTimeout(() => this.isHidden = false, 500);
}
}
或没有箭头功能:
methods: {
activate() {
var that = this;
setTimeout(function() { that.isHidden = false; }, 500);
}
}
我有一个输入字段,v-on:input
它运行一个名为 activate
的方法,如下所示:
export default: {
data() {
return {
isHidden: true
}
},
methods: {
activate() {
this.isHidden = false;
}
}
}
isHidden
变成 on/off 一些图标(这个数据 属性 是什么并不重要;我只是用它来举例)。
所以目前,当用户执行 input
时,它会立即打开 activate
功能。有没有办法通过 setTimeout
延迟它?我已尝试执行以下操作,但它不起作用:
methods: {
setTimeout(function() {
activate() {
this.isHidden = false;
}
}, 500)
}
试试这个:
methods: {
activate() {
setTimeout(() => this.isHidden = false, 500);
}
}
或没有箭头功能:
methods: {
activate() {
var that = this;
setTimeout(function() { that.isHidden = false; }, 500);
}
}