我们以cookie为例。
bower --save angular-cookies
'use strict'angular.module('app',['ui.router','ngCookies']);'use strict';
angular.module('app').service('cache', ['$cookies', function($cookies){
this.put = function(key, value){
$cookies.put(key, value);
}; this.get = function(key) {
return $cookies.get(key);
}; this.remove = function(key) {
$cookies.remove(key);
};
}]);angular.module('app').factor('cache', ['$cookies', function($cookies){
//也就是说factor和service同时声明服务,作用是一样的,它们的区别在于我们调用factor的时候,factor可以在return对象之前可以声明一些私有的属性。如:
var obj = {};//相当于一个私有属性,外部不可访问,而直接声明service是没有这个功能的。
//注意:factor和service不同,我们不能再this这个当前对象上面添加属性了,而是返回一个对象
//这个对象所带来的属性就是我们外面引用的factor可以引用的属性
return {
put : function(key, value){
$cookies.put(key, value);
};
get : function(key) {
return $cookies.get(key);
};
remove : function(key) {
$cookies.remove(key);
};
}
}]);也就是说factor和service同时声明服务,作用是一样的,它们的区别在于我们调用factor的时候,factor可以在return对象之前可以声明一些私有的属性。
当不需要声明内部的私有属性的时候,他们的功能是相同的。
需要记住的是factor需要直接返回一个对象,而service直接返回函数就可以了。
'use strict';
angular.module('app').controller('positionCtrl',['$q','$http','$state','$scope','cache',function ($q,$http,$state,$scope,cache) {
cache.put('to','day');//存入这个值
cache.remove('to'); //删除}]);以上就是用AngularJS的实现自定义服务的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号