我是AngularJS的新手。我的 Controller 中有以下代码:

let timeout_ = false;
let TIMELAPSE_ = 2000;
vm.setId= function (id) {
   $timeout.cancel(timeout_);
   timeout_ = $timeout(() => { SearchService.setId(id), TIMELAPSE_});
};

在我的模板中,我使用:ng-click="parent.setId(id)"timeout似乎不起作用。为什么?

最佳答案

尝试将TIMELAPSE_作为第二个参数解析到$timeout函数中,您会没事的。看到这个runnable fiddle

let timeout_ = false;
let TIMELAPSE_ = 2000;
vm.setId= function (id) {
   $timeout.cancel(timeout_);
   timeout_ = $timeout(() => { SearchService.setId(id)}, TIMELAPSE_);
};

关于javascript - AngularJS:超时不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42834831/

10-10 02:51