如何在 AngularJS 中显示表单提交状态
How to display form submission status in AngularJS
我开始研究 Angular JS,发现这个框架到目前为止非常棒。
不过我对表单提交最佳实践有疑问。
我有一个更新数据表单,其中包含 ng-controller
和 ng-submit
指令,它在加载时使用 get
从服务器加载数据,在提交时使用 posts
数据。
我的问题是,当用户单击提交按钮时,我如何指示实际发生的事情?例如。在处理操作时显示 activity 指示符,并在处理后显示某种成功或失败消息。
我以前使用 jQuery 为 ajax 表单执行此操作,我是否仍使用 jQuery 或 Angular JS 中有其他工具我不这样做不知道吗?
谢谢
在 angular 中使用 AJAX 承诺非常简单。看看 this post。在处理您的请求时,您可能会显示正在加载 icon/text:
$scope.loading = true;
$http.post("http://example.appspot.com/rest/app", {"foo":"bar"})
.success(function(data, status, headers, config) {
$scope.data = data;
$scope.loading = false;
}).error(function(data, status, headers, config) {
$scope.status = status;
$scope.loading = false;
});
然后只需隐藏和显示指示您的加载状态的任何内容:
<p ng-show="loading">LOADING</p>
我开始研究 Angular JS,发现这个框架到目前为止非常棒。
不过我对表单提交最佳实践有疑问。
我有一个更新数据表单,其中包含 ng-controller
和 ng-submit
指令,它在加载时使用 get
从服务器加载数据,在提交时使用 posts
数据。
我的问题是,当用户单击提交按钮时,我如何指示实际发生的事情?例如。在处理操作时显示 activity 指示符,并在处理后显示某种成功或失败消息。
我以前使用 jQuery 为 ajax 表单执行此操作,我是否仍使用 jQuery 或 Angular JS 中有其他工具我不这样做不知道吗?
谢谢
在 angular 中使用 AJAX 承诺非常简单。看看 this post。在处理您的请求时,您可能会显示正在加载 icon/text:
$scope.loading = true;
$http.post("http://example.appspot.com/rest/app", {"foo":"bar"})
.success(function(data, status, headers, config) {
$scope.data = data;
$scope.loading = false;
}).error(function(data, status, headers, config) {
$scope.status = status;
$scope.loading = false;
});
然后只需隐藏和显示指示您的加载状态的任何内容:
<p ng-show="loading">LOADING</p>