• 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");
                }
            }])
    });
  • 相关阅读:
    Appium元素定位方式
    Selenium和Appium的关系
    再生龙备份恢复
    删除CentOS更新后的旧内核
    文字识别网站https://ocr.space/
    kubeasz部署高可用kubernetes1.17.2 并实现traefik2.1.2部署 亲测可用
    docker之Dockerfile实践用dockerfile构建nginx环境
    WordPress如何设置先登录再进入主页
    docker 容器使用 systemctl 命令是报错
    bilibili
  • 原文地址:https://www.cnblogs.com/evaling/p/6665146.html
Copyright © 2020-2023  润新知