Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ampersand view&lodash.debounce_Javascript_Lodash_Ampersand.js - Fatal编程技术网

Javascript Ampersand view&lodash.debounce

Javascript Ampersand view&lodash.debounce,javascript,lodash,ampersand.js,Javascript,Lodash,Ampersand.js,我正在使用lodash.debounce和ampersand view 我为视图的事件注册我的事件处理程序,例如 events: { 'click [data-hook~=power-on]': "power", 'click [data-hook~=shutdown]': 'shutdown', 但是我想使用debounce,这样当用户对按钮进行垃圾邮件处理时,它不会太频繁地触发 但是,事件注册似乎仅采用方法名称字符串 我肯定我错过了一些简单的事情;但是这是一

我正在使用lodash.debounce和ampersand view

我为视图的事件注册我的事件处理程序,例如

events: {
        'click [data-hook~=power-on]': "power",
        'click [data-hook~=shutdown]': 'shutdown',
但是我想使用debounce,这样当用户对按钮进行垃圾邮件处理时,它不会太频繁地触发

但是,事件注册似乎仅采用方法名称字符串

我肯定我错过了一些简单的事情;但是这是一个漫长的一周

解决方案


我使用了一个在view powerOn:函数中定义的方法,但这不起作用,因为似乎找不到this.powerOn引用;我必须将通电功能移到视图之外,然后以下操作起作用:

'click [data-hook~=power-on]': debounce(powerOn, 2000, { 'leading': true,  'trailing': false }),
回调可以是视图上方法的名称,也可以是实际函数的名称。

因此,您可以在事件中使用函数:

events: {
  'click [data-hook~=power-on]': _.debounce(callback)
}

我使用了一个在view powerOn:函数中定义的方法,但这不起作用,因为似乎找不到this.powerOn引用;我不得不将通电功能移到视图之外。