我有以下内容,它对<input>
绑定到 $scope.id 的字段进行监视。每次输入字段值更改时,都会执行 watch 函数:
$scope.$watch("id", function (id) {
// code that does something based on $scope.id
});
有没有办法我可以对此设置超时或使用 _lodash 去抖动,以便在用户更改值时代码不会在每次按键时执行。
我想要的是延迟一秒钟,以便在用户停止输入一秒钟后,手表内的代码块就会运行。请注意,输入值可能随时更改。例如,如果值为“1”或“10”或“1000”,我需要调用该函数。这类似于带有建议的搜索框在 Google 中的工作方式。如果用户输入 999,那么我需要调用该函数。如果他删除了 9 所以它是 99 那么我需要调用该函数。
我确实有 _lodash 可用,因此使用的解决方案可能最适合我的需求。