AngularJS:超时不起作用

时间:2017-03-16 12:59:46

标签: javascript angularjs ecmascript-6 timeout

我是AngularJS的新手。我的控制器中有这个代码:

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似乎不起作用。为什么呢?

1 个答案:

答案 0 :(得分:3)

尝试将TIMELAPSE_作为第二个参数解析为$timeout函数,你会没事的。请参阅此runnable fiddle

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