Angularjs的$http异步删除数据详解及实例


Posted in Javascript onJuly 27, 2017

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异步删除数据的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
HTA版JSMin(省略修饰语若干)基于javascript语言编写
Dec 24 Javascript
JQuery中html()方法使用不当带来的陷阱
Apr 07 Javascript
Bootstrap学习笔记之css样式设计(2)
Jun 07 Javascript
jQuery继承extend用法详解
Oct 10 Javascript
js实现选项卡内容切换以及折叠和展开效果【推荐】
Jan 08 Javascript
基于JavaScript定位当前的地理位置
Apr 11 Javascript
详解vue-cli 构建Vue项目遇到的坑
Aug 30 Javascript
最实用的JS数组函数整理
Dec 05 Javascript
Vue 过滤器filters及基本用法
Dec 26 Javascript
使用JS判断页面是首次被加载还是刷新
May 26 Javascript
小程序表单认证布局及验证详解
Jun 19 Javascript
jquery实现淡入淡出轮播图效果
Dec 13 jQuery
js学习总结之DOM2兼容处理this问题的解决方法
Jul 27 #Javascript
Angularjs的键盘事件的绑定
Jul 27 #Javascript
Angularjs 事件指令详细整理
Jul 27 #Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
Jul 27 #Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
Jul 27 #Javascript
angular中实现li或者某个元素点击变色的两种方法
Jul 27 #Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
Jul 27 #Javascript
You might like
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
php去除html标记的原生函数详解
2015/01/27 PHP
PHP实现JS中escape与unescape的方法
2016/07/11 PHP
PHP基于socket实现客户端和服务端通讯功能
2017/07/13 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
PHP实现腾讯短网址生成api接口实例
2020/12/08 PHP
De facto standard 世界上不可思议的事实标准
2010/08/29 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
页面使用密码保护代码
2013/04/10 Javascript
JS图片切换的具体方法(带缩略图版)
2013/11/12 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
2014/06/30 Javascript
JavaScript实现的双向跨域插件分享
2015/01/31 Javascript
AngularJS包括详解及示例代码
2016/08/17 Javascript
微信小程序图片宽100%显示并且不变形
2017/06/21 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
JavaScript实现精美个性导航栏筋斗云效果
2017/10/29 Javascript
解决在vue+webpack开发中出现两个或多个菜单公用一个组件问题
2017/11/28 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
vue使用代理解决请求跨域问题详解
2019/07/24 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
JSONObject与JSONArray使用方法解析
2020/09/28 Javascript
[09:34]2018DOTA2国际邀请赛寻真——永不放弃的iG
2018/08/14 DOTA
centos+nginx+uwsgi+Django实现IP+port访问服务器
2019/11/15 Python
python线程池 ThreadPoolExecutor 的用法示例
2020/10/10 Python
Python爬虫之Selenium实现窗口截图
2020/12/04 Python
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
Ray-Ban雷朋美国官网:全球领先的太阳眼镜品牌
2016/07/20 全球购物
Java方面的关于数组和继承的笔面试题
2015/09/18 面试题
给酒店员工的表扬信
2014/01/11 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
观后感格式
2015/06/19 职场文书
关于远足的感想
2015/08/10 职场文书
javascript函数式编程基础
2021/09/15 Javascript