当前位置: 首页 > 编程笔记 >

AngularJS constant和value区别详解

金钊
2023-03-14
本文向大家介绍AngularJS constant和value区别详解,包括了AngularJS constant和value区别详解的使用技巧和注意事项,需要的朋友参考一下

angularJS可以通过constant(name,value)和value(name,value)对于创建服务也是很重要的。

相同点是:都可以接受两个参数,name和value。

区别:

1.constant(name,value)可以将一个已经存在的变量值注册为服务,并将其注入到应用的其他部分中。其中,name为注册的常量的名字,value为注册的常量的值或对象。

举例:

(1)value为值时:

angular.module('myApp') .constant('apiKey','123123123')
.controller('MyController', function($scope, apiKey) {
// 可以像上面一样用apiKey作为常量
// 用123123123作为字符串的值
$scope.apiKey = apiKey;
});

(2)value为对象时:

angular.module('myApp') .constant('apiKey',{name:[],age:[],date:[]})
.factory('myFactory',function(apiKey,$scope){
apiKey.name = "lyy";
});

2.value(name,value)的name同样是需要注册的服务名,value将这个值将作为可以注入的实例返回。

ngular.module('myApp')
.value('apiKey','123123123'); 

它们最大的区别是:常量可以注入到配置函数中,而值不行。

通常情况下,可以通过value()来注册服务对象或函数,用constant()来配置数据。

angular.module('myApp', [])
.constant('apiKey', '123123123')
.config(function(apiKey) {
// 在这里apiKey将被赋值为123123123
// 就像上面设置的那样
})
.value('FBid','231231231')
.config(function(FBid) {
// 这将抛出一个错误,未知的provider: FBid
// 因为在config函数内部无法访问这个值
});

综上,当我们想要创建一个服务,并且这个服务只需要返回数据时,就可以使用constant(name,value)和value(name,value),不过,它们有两个显著的区别:

1.value不可以在config里注入,但是constant可以

2.value可以修改,但是constant不可以修改,一般直接用constant配置一些需要经常使用的数据。

以上所述是小编给大家介绍的AngularJS constant和value区别详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • JavaScript中的、和有什么区别?

  • 本文向大家介绍ipython和python区别详解,包括了ipython和python区别详解的使用技巧和注意事项,需要的朋友参考一下 ipython介绍 IPython 是一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell命令,内置了许多很有用的功能和函数。 IPython 是基于BSD 开源的。 IPyt

  • 我不熟悉我们在Spring框架中用于缓存的@Cacheable和@CacheEvict注释。但是,在研究@Cacheable使用的实现和参数时,@Cacheable注释的value和cacheName参数之间有什么区别?

  • 本文向大家介绍Object.keys() 和 Object.getOwnPropertyNames() 的区别详解,包括了Object.keys() 和 Object.getOwnPropertyNames() 的区别详解的使用技巧和注意事项,需要的朋友参考一下 大部分情况下Object.getOwnPropertyNames()与Object.keys(obj)的功能是一样的,我们一般也是用来获

  • 问题内容: angularjs模板中的和属性之间有什么区别?如果我在使用value属性的字段上使用它,则它正常工作,但是如果我将该属性更改为它,它将停止工作。 问题答案: 根据 文档 ,采用 “角表达式,其值将绑定到 元素的属性”。 因此,当您使用时,它将被解释为一个表达式,并且被绑定到(可能是)。 对于评估表达式很有用- 与设置硬编码值相比没有优势。但是,如果您想使用硬编码值,则必须将其包含在:

  • 本文向大家介绍Mybatis-Plus和Mybatis的区别详解,包括了Mybatis-Plus和Mybatis的区别详解的使用技巧和注意事项,需要的朋友参考一下 原文:https://blog.csdn.net/qq_34508530/article/details/88943858 . 区别一 如果Mybatis Plus是扳手,那Mybatis Generator就是生产扳手的工厂。 通俗来