当我在VueJs中对这个函数进行去抖处理时,如果我提供一个原始的毫秒数,它能够正常工作。但是,如果我将其作为一个prop的引用提供,它会被忽略。
以下是props的简化版本:
以下是props的简化版本:
props : {
debounce : {
type : Number,
default : 500
}
}
以下是不起作用的手表选项:
watch : {
term : _.debounce(function () {
console.log('Debounced term: ' + this.term);
}, this.debounce)
}
这里有一个可行的观察选项:
watch : {
term : _.debounce(function () {
console.log('Debounced term: ' + this.term);
}, 500)
}
我怀疑这是一个作用域问题,但我不知道如何解决。如果我将watch方法替换为以下内容...
watch : {
term : function () {
console.log(this.debounce);
}
}
我在控制台中看到正确的去抖值(500)。
this.$watch
,然后您将收到this.debounce
的正确值。https://vuejs.org/v2/api/#vm-watch - Eric Guan