欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

高效利用Angular中内置服务$http、$location等

程序员文章站 2022-09-01 18:43:34
angularjs中为我们提供了众多的内置服务,通过这些内置服务可以轻松的实现一些常用功能。下面对angular中常用的内置服务进行一下总结。 1.$location服务...

angularjs中为我们提供了众多的内置服务,通过这些内置服务可以轻松的实现一些常用功能。下面对angular中常用的内置服务进行一下总结。
1.$location服务

$location服务用于返回当前页面的url地址,示例代码如下:
var app = angular.module('myapp', []); 
app.controller('customersctrl', function($scope, $location) { 
 $scope.myurl = $location.absurl(); 
}); 

 这里为$scope对象定义了myurl变量,然后利用$location服务读取到了url地址并存储到myurl中。
2..$http服务
$http 是 angularjs 中最常用的服务,它经常用于服务器的数据传输。下面的例子中服务向服务器发送请求,应用响应服务器传送过来的数据。

var app = angular.module('myapp', []); 
app.controller('myctrl', function($scope, $http) { 
 $http.get("welcome.htm").then(function (response) { 
  $scope.mywelcome = response.data; 
 }); 
}); 

3.$timeout()服务和$interval()服务
这两个服务的功能对应的是javascript中的settimeout()和settimeinterval函数。一个简单的实时更新时间例子如下:

app.controller('myctrl', function($scope, $interval) { 
 $scope.thetime = new date().tolocaletimestring(); 
 $interval(function () { 
  $scope.thetime = new date().tolocaletimestring(); 
 }, 1000); 
}); 

 除了angular中提供的内置服务外,我们也可以自己定义服务,利用service即可,下面是一个定义服务的基本代码框架:

app.service('hexafy', function() { 
 this.myfunc = function (x) { 
  return x.tostring(16); 
 } 
}); 

定义好服务后,我们可以像使用内置的angular服务一样使用它:

app.controller('myctrl', function($scope, hexafy) { 
 $scope.hex = hexafy.myfunc(255); 
}); 

以上就是针对angular中常用的内置服务进行的汇总,希望对大家的学习有所帮助。