javascript - 当有更多提交按钮可用时处理多个 Angular 调用

标签 javascript jquery angularjs

我有一个表单,其中包含一个下拉列表、复选框和四个按钮。当执行任何操作时(选中/取消选中或下拉选择或单击按钮),它必须触发服务调用,并且应更新以下部分。可能存在可以立即相继执行多个 Action 的机会。如果是这种情况,则应仅在上次事件之后触发 http 调用。

如果有任何可行的想法,那就太好了。我觉得超时有助于等待用户完成所有事件(在每个事件后等待一定时间)并调用 http 服务。

最佳答案

我想这就是你所需要的:

var timeoutPromise;
var delayInMs = 2000;
$scope.$watch("your_form_scope", function(newValue, oldValue) {
  $timeout.cancel(timeoutPromise);  //does nothing, if timeout alrdy done
  timeoutPromise = $timeout(function(){   //Set timeout
     //your code
  },delayInMs);
});

关于javascript - 当有更多提交按钮可用时处理多个 Angular 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38015957/

相关文章:

javascript - jmHighlight 有问题

jquery - 如何使用 jQuery 同时运行 `show` 和 `animate`?

javascript - 使用正则表达式捕获冒号和逗号之间的字符

javascript - ng-click 用户定义的带有外部模板的 $mdDialog 不工作

angularjs - 在 AngularJS 中控制一个 Controller 中的多个 View

javascript - 更新 mongodb 中的聚合结果?

javascript - Jquery建议值不起作用

javascript - Firebase 身份验证错误 - 每当我尝试使用 google 登录时

javascript - 在加载和调整大小时更改 Div 宽度

javascript - 如何更改 dxDataGrid 上的文本 "Select all"?