AngularJs 自定义ajax服务为请求添加加载动画

一、此处示例使用iconic的动画加载

1.自定义ajax服务封装

//全局配置请求处理
app.service('$ajax', function ($http, $ionicLoading) {
    this.get = function (url, data, onSuccess, onError) {
        $ionicLoading.show(); //显示动画
        $http.get(url, {
            param: data
        })
        .then(function (result) {
            if (result.status == 200) {
                if (onSuccess)
                    onSuccess(result.data);
            } else {
                if (onError)
                    onError(result.data);
            }
            $ionicLoading.hide(); //隐藏动画
        }).catch(function (err) {
            console.error(err);
            if (onError)
                onError(err.data);
            $ionicLoading.hide(); //隐藏动画
        });
    }
});
2.页面内容

<div class="list">
    <div class="item">
        <button class="button button-balanced" ng-click="show($event);">加载</button>
    </div>
</div>
<ion-content overflow-scroll="false">{{content}}</ion-content>

3.使用实例

var app = angular.module('myApp', ['ionic']);
//全局配置加载动作
app.constant('$ionicLoadingConfig', {
    template: '<ion-spinner icon="lines" class="spinner-calm"></ion-spinner>',
    animation: 'fade-in'
});
app.controller('myCtrl', function ($scope, $http, $ajax) {
    $scope.show = function ($event) {
        //显示加载
        $ajax.get('http://www.gongjuji.net', {}, function (data) {
            $scope.content = data;
        });
        $event.stopPropagation();
    }
});
显示效果:




更多:

AngularJs $http 请求服务整理

AngularJs constant()和value()

AngularJS阻止事件冒泡$event.stopPropagation()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值