服务的装饰器 decorator

2017-05-25  本文已影响0人  赵碧菡
图片.png
HTML 代码

<body ng-app="myApp">
<div ng-controller="myCtrl">
    <h1>姓名 :{{stu.name}}</h1>
    <h1>年龄 :{{stu.age}}</h1>
    <h1>性别 :{{stu.sex}}</h1>
</div>

JS代码

<script type="text/javascript">
    
var app=angular.module('myApp',[]);
//创建一个服务
app.factory('$student',function(){
    return {
        'name':'tom',
        'age':18
        }
})
.config(function($provide){
//这里调用了$provide中的decorator 方法
//这里的$delegate 参数是服务($student)实例化后的对象,该参数代表原服务中的JSON对象
         $provide.decorator('$student',function($delegate){
            //添加一个属性
              $delegate.sex="男";
              //修改原有属性值
               $delegate.age=24;
              return $delegate;
          });
    })
.controller('myCtrl',function($scope,$student){
        $scope.stu=$student;
    });
</script>

运行结果

结果.png
上一篇 下一篇

猜你喜欢

热点阅读