Angularjs的$http异步删除数据详解及实例
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Angularjs的$http异步删除数据详解及实例,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1626字,纯文字阅读大概需要3分钟。
内容图文
![Angularjs的$http异步删除数据详解及实例](/upload/InfoBanner/zyjiaocheng/343/1c49ca74e9ba40e68aba42a2eded6fa1.jpg)
Angularjs的$http异步删除数据详解及实例
有人会说删除这东西有什么可讲的,写个删除的service,controller调用一下不就完了。
嗯...看起来是这样,但是具体实现起来真的有这么简单吗?首先有以下几个坑
怎么确定数据是否删除成功?
怎么同步视图的数据库的内容?
1.思路
1.实现方式一
删除数据库中对应的内容,然后将$scope中的对应的内容splice
2.实现方式二
删除数据库中对应的内容,然后再reload一下数据(也就是再调用一次查询方法,这种消耗可想而知,并且还要保证先删除数据再查询)
2.具体实现方式
删除数据的service:用异步,返回promise
service('deleteBlogService',//删除博客 ['$rootScope', '$http', '$q', function ($rootScope, $http, $q) { var result = {}; result.operate = function (blogId) { var deferred = $q.defer(); $http({ headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8' }, url: $rootScope.$baseUrl + "/admin/blog/deleteBlogById", method: 'GET', dataType: 'json', params: { id: blogId } }) .success(function (data) { deferred.resolve(data); console.log("删除成功!"); }) .error(function () { deferred.reject(); alert("删除失败!") }); return deferred.promise; }; return result; }])
controller里面注意事项
要特别注意执行顺序:确保己经删除完成之后再去reload数据,不然会出来视图不更新
/** * 删除博客 */ $scope.deleteBlog = function (blogId) { var deletePromise = deleteBlogService.operate(blogId); deletePromise.then(function (data) { if (data.status == 200) { var promise = getBlogListService.operate($scope.currentPage); promise.then(function (data) { $scope.blogs = data.blogs; $scope.pageCount = $scope.blogs.totalPages; }); } }); };
以上就是Angularjs的$http异步删除数据的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
内容总结
以上是互联网集市为您收集整理的Angularjs的$http异步删除数据详解及实例全部内容,希望文章能够帮你解决Angularjs的$http异步删除数据详解及实例所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。