Angularjs模型更新延迟

Angularjs model update delay

本文关键字:延迟 更新 模型 Angularjs      更新时间:2024-06-05

更新模型时似乎有延迟。如果我在更新模型后立即提交表格,旧数据将被提交,但如果我在1秒后提交,它将正确工作:

演示

编辑1:演示代码只是我最终代码的简化版本,用于演示问题:当提交表单时,"城市"字段的值是"NY"而不是"LA"。

编辑2:感谢所有关于最佳实践和替代方法的建议,但我问这个问题是想知道使用angularjs是否会导致绑定延迟,如果答案是肯定的,那么使用它不会不安全吗?

使用ngSubmit和按钮,而不是链接和ngClick。我认为问题是,您在方法中手动触发表单提交。这没必要。顺便说一句,你应该避免将jQuery $("...")与angular一起使用,因为你对jQuery所做的大多数更改都不会被angular 识别

<form id="myform" method="POST" ng-submit="submitForm()">
  <input type="text" name="city" id="city" ng-model="city">{{ city }}
  <button type="submit">Click Here</button>
</form>

我强烈建议您不要在Angularjs中执行Jquery代码:

AVOID: $("#myform").submit();

最重要的是,我不明白在这个用例中使用angularjs的意义。您没有采用angularjs的最佳实践,也就是说,当您使用标准的html POST请求时,您应该通过POST服务发送信息。

我希望它能有所帮助。