$location 和 window.location的区别

一:Angular中的服务是什么?

  • AngularJS 中你可以创建自己的服务,或使用内建服务;
  • 在 AngularJS 中,服务是一个函数或对象,可在你的 AngularJS 应用中使用;
  • AngularJS 内建了30 多个服务
  • 有个 $location 服务,它可以返回当前页面的 URL 地址;
    注意:注意 $location 服务是作为一个参数传递到 controller 中。如果要使用它,需要在 controller 中定义
    例如:
        angular.module('myApp',[]).controller('myCtrl',function($scope,$location){
            $scope.myUrl = $location.absUrl();
            console.log($location);
        })

二:为什么使用服务?
  在很多服务中,比如 $location 服务,它可以使用 DOM 中存在的对象,类似 window.location 对象,但 window.location 对象在 AngularJS 应用中有一定的局限性。
AngularJS 会一直监控应用,处理事件变化, AngularJS 使用 $location 服务比使用 window.location 对象更好。
$location和window.location的利弊
这里写图片描述
三:$http服务?
  该服务向服务器发送请求,应用响应服务器传送过来的数据。
js代码:

        angular.module('myApp',[]).controller('myCtrl',function($scope,$http){
            $http.get('datas.json').then(function(response){
                console.log(response.data)
            })
        })

json代码:

{ 
    "programmers": [
        { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
        { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
        { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
    ],
    "name" : "bangbang"
}

四:$timeout$interval服务
$Timeout服务对应了 JS 中的window.setTimeout 函数。
$interval服务对应了 JS window.setInterval 函数。
例如:

        angular.module('myApp',[]).controller('myCtrl',function($scope,$interval){
            $scope.theTime = new Date().toLocaleTimeString();
            $interval(function(){
                $scope.theTime = new Date().toLocaleTimeString();
            },1000);
        })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值