AngularJS constant和value区别详解


Posted in Javascript onFebruary 28, 2017

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 相关文章推荐
javascript 密码强度验证规则、打分、验证(给出前端代码,后端代码可根据强度规则翻译)
May 18 Javascript
jQuery EasyUI API 中文文档 - Calendar日历使用
Oct 19 Javascript
Javascript毫秒数用法实例
Feb 05 Javascript
jQuery on()绑定动态元素出现的问题小结
Feb 19 Javascript
Javascript学习之谈谈JS的全局变量跟局部变量(推荐)
Aug 28 Javascript
Bootstrap Table使用整理(四)之工具栏
Jun 09 Javascript
Bootstrap-table使用footerFormatter做统计列功能
Sep 07 Javascript
Vue.js特性Scoped Slots的浅析
Feb 20 Javascript
JS数组中对象去重操作示例
Jun 04 Javascript
浅谈小程序globalData的那些事儿
Nov 01 Javascript
在VUE中使用lodash的debounce和throttle操作
Nov 09 Javascript
js闭包的9个使用场景
Dec 29 Javascript
微信小程序左右滑动切换页面详解及实例代码
Feb 28 #Javascript
微信小程序 使用腾讯地图SDK详解及实现步骤
Feb 28 #Javascript
Vue.js父与子组件之间传参示例
Feb 28 #Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
Feb 28 #Javascript
JS对象创建的几种方式整理
Feb 28 #Javascript
js仿淘宝评价评分功能
Feb 28 #Javascript
jQuery布局组件EasyUI Layout使用方法详解
Feb 28 #Javascript
You might like
DOTA2 1月28日更新:监管系统降临刀塔世界
2021/01/28 DOTA
PHP4(windows版本)中的COM函数
2006/10/09 PHP
让你的PHP同时支持GIF、png、JPEG
2006/10/09 PHP
Javascript 获取LI里的内容
2008/12/17 Javascript
javascript 写的一个简单的timer
2009/07/30 Javascript
Js实现手机发送验证码时按钮延迟操作
2014/06/20 Javascript
$("").click与onclick的区别示例介绍
2014/09/25 Javascript
JavaScript中字符串分割函数split用法实例
2015/04/07 Javascript
JS判断页面是否出现滚动条的方法
2015/07/17 Javascript
jquery实现ajax加载超时提示的方法
2016/07/23 Javascript
利用node.js制作命令行工具方法教程(一)
2017/06/22 Javascript
nodejs 搭建简易服务器的图文教程(推荐)
2017/07/18 NodeJs
JavaScript 值类型和引用类型的初次研究(推荐)
2017/07/19 Javascript
vue中关闭eslint的方法分析
2018/08/04 Javascript
解决vue 打包发布去#和页面空白的问题
2018/09/04 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
使用Vue 自定义文件选择器组件的实例代码
2020/03/04 Javascript
jQuery实现本地存储
2020/12/22 jQuery
使用Python编写简单网络爬虫抓取视频下载资源
2014/11/04 Python
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
Django管理员账号和密码忘记的完美解决方法
2018/12/06 Python
使用python将请求的requests headers参数格式化方法
2019/01/02 Python
python基础梳理(一)(推荐)
2019/04/06 Python
Python中函数的返回值示例浅析
2019/08/28 Python
Python获取时间戳代码实例
2019/09/24 Python
PyTorch中topk函数的用法详解
2020/01/02 Python
Python3爬虫中关于Ajax分析方法的总结
2020/07/10 Python
scrapy处理python爬虫调度详解
2020/11/23 Python
开发中都用到了那些设计模式?用在什么场合?
2014/08/21 面试题
旅游饭店管理专业自荐书
2014/06/28 职场文书
七夕活动策划方案
2014/08/16 职场文书
学校艾滋病宣传活动总结
2015/05/09 职场文书
2015年关爱留守儿童工作总结
2015/05/22 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
2019年妇科护士的自我鉴定(3篇)
2019/09/26 职场文书