首页 > 代码库 > ng自定义服务(利用factory)
ng自定义服务(利用factory)
ng中我们可以自己定义自己的服务,服务中是一些使用重复率较高的方法。因此有效的使用服务可以提高开发速度。
ng中定义服务的方法有多种,service,factory,provide,在此我只介绍最长用的一种,利用factory
factory会以返回一个对象的形式
app.factory("服务的名字",[function(){
return{
getName:function(){
/........./
}
}
}]);
demo:
services/zct_get_my_right.js
define([‘app‘,‘jquery‘], function (myapp) {
myapp.factory(‘get_my_right‘, [function () {
console.log("get_my_right");
var get_my_right={};//自己定义一个对象
//得到用户的权限
get_my_right.get_right=function(obj){
return(JSON.parse(JSON.parse(obj)));
},
get_my_right=function(){
....
return ......
}
return get_my_right;//返回一个对象
}])
})
使用:
使用服务之前需引入
//创意界面的权限控制器
define(["app",‘services/zct_get_my_right‘], function (myapp) {
myapp.controller(‘ideas_first_ctrl‘,
[‘$scope‘,‘$rootScope‘,‘$state‘,‘get_my_right‘, function (s,rs,$state,getRight) {
var my_right=getRight.get_right(localStorage.permission);
console.log(my_right);
if(my_right.ideas.view){//说明此用户有查看全部创意的权限的
// $state.go("home.ideas.allIdeas",{user_right:JSON.stringify(idea_right)});
s.can_see_all_idea=true;
$state.go("home.ideas.allIdeas");
}
else{//此用户没有查看全部创意的权限
//$state.go("home.ideas.myIdeas",{user_right:JSON.stringify(idea_right)});
s.can_see_all_idea=false;
$state.go("home.ideas.myIdeas");
}
}])
});
ng自定义服务(利用factory)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。