angular $provide factory constant value

本文介绍了Angular中创建服务的四种主要方法:使用$provide内置服务、factory模块方法、service模块方法及利用value创建常量服务。文章通过具体示例展示了每种方法的特点及应用场景。
angular  创建服务的四种方式

    第一种 $provide  内置服务创建
        angular.module('app', [], function($provide) {
            $provide.factory('$kk', function() {
                var obj = {
                    name: 'hello'
                };
                return obj;
            })
        }).controller('myCtrl', function($scope, $kk) {
            console.log('$kk', $kk);
        })

    第二种 factory 模块方法    
        angular.module('app', [])
        .factory('$kk',function() {
            return {};
        }).controller('myCtrl', function($scope, $kk) {
            console.log('$kk', $kk);
        })


    第三种 service  模块方法
        //需要传递一个构造函数,必须是一个构造函数
        angular.module('app', [])
        .service('$kk', function() {
            this.name = 'hello';
            this.say = function() {
                return this.name + 'world';
            }
        }).controller('myCtrl', function($scope, $kk) {
            console.log('$kk', $kk.name);
            console.log('$kk', $kk.say());
        })  

        constant和value 创建服务用来返回一个常量

    第四种  value  
        angular.module('app', [])
        .value('$kk',{
            HELLO: 'hello'
        }).controller('myCtrl', function($scope, $kk) {
            console.log('$kk', $kk.HELLO); // hello
            //借助angular.extend() 可以修改常量值。 需要借助$RATE 内置的服务
            angular.extend($RATE, {HELLO: 'world'})
            console.log('$kk', $kk.HELLO); //world
        })

        constant 用法和 value 相同 两者之间最大的区别是,constant服务创建的常量可以被注入到config之中去,所以constant常用来创建配置数据,value用来创建对象和函数。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值