angularJS constant和value

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

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

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

举例:

value为值时:

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

value为对象时:

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

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函数内部无法访问这个值
});

时间: 2024-08-30 16:52:51

angularJS constant和value的相关文章

跟我学AngularJs:Controller数据共享、继承、通信使用具体解释

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主讲了AngularJs中的Controller中数据共享.继承.通信的具体使用 本教程使用AngularJs版本号:1.5.3 AngularJs GitHub: https://github.com/angular/angular.js/ AngularJs下载地址:https://angularjs.org/ 一.controller基础与使用方法 AngularJS中的co

跟我学AngularJs:Controller数据共享、继承、通信使用详解

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主讲了AngularJs中的Controller中数据共享.继承.通信的详细使用 本教程使用AngularJs版本:1.5.3 AngularJs GitHub: https://github.com/angular/angular.js/ AngularJs下载地址:https://angularjs.org/ 一.controller基础与用法 AngularJS中的contr

angularjs 设置全局变量的3种方法

angularjs自身有二种,设置全局变量的方法,在加上js的设置全局变量的方法,总共有三种.要实现的功能是,在ng-app中定义的全局变量,在不同的ng-controller里都可以使用. 1,通过var 直接定义global variable,这根纯js是一样的. 2,用angularjs value来设置全局变量 . 3,用angularjs constant来设置全局变量 . 下面用一个例子,来说明,上面3种方法: 实例: 1,在app模块中,定义全局变量 查看复制打印? 'use st

AngularJS注册和使用服务和常量(provider、factory、service、constant、value)

1.   简介 AngularJS采用MVC架构,提供了服务的注册和以依赖注入方式使用服务的机制.服务是功能(方法)和数据(常量)的抽象,比如系统中关于用户信息相关的功能(头像.昵称.签名.生日.性别等信息的获取与修改)抽象后集中在一个对象中,那么这个对象就可以视为一个服务.服务可以通过angular.Module(常以var app = angular.module('my-app',[])方式获取)和$provider(以依赖注入方式获取)对象注册,常以依赖注入的方式使用使用. 每个服务有一

[AngularJS系列(4)] 那伤不起的provider们啊~ (Provider, Value, Constant, Service, Factory, Decorator)(转)

用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄弟多!! 好吧...也许是我的问题,脑仁儿确实不够大,反正我是晕的直挠墙~ 那到底什么时候该请他们谁出场啊? 经过挠墙之后挠官网文档挠google挠源码挠例子试验,终于让我把他们的区别给挠出来了!(得意的笑--) 首先,provider, value, constant, service, fact

[转]angularjs的provider~ (Provider, Value, Constant, Service, Factory, Decorator)

用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄弟多!! 好吧...也许是我的问题,脑仁儿确实不够大,反正我是晕的直挠墙~ 那到底什么时候该请他们谁出场啊? 经过挠墙之后挠官网文档挠google挠源码挠例子试验,终于让我把他们的区别给挠出来了!(得意的笑--) 首先,provider, value, constant, service, fact

AngularJS里面$emit, $broadcast,$on,$http.Jsonp,constant是使用笔记

本片主要介绍$emit, $broadcast,$on经常开发的用法! 这张图差不多表明了$emit, $broadcast在aj里面的机制和用场! 这篇文章介绍了aj里面使用jsonp的原理和注意的地方! 下面直接显示下我运行起来的界面! 然后贴上DOM和js代码,本篇不多说,分享一些常用的东西! DOM+js  代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U

转载:[AngularJS系列] 那伤不起的provider们啊~ (Provider, Value, Constant, Service, Factory, Decorator)

来源:http://hellobug.github.io/blog/angularjs-providers/ 用AngularJS做项目,但凡用过什么service啊,factory啊,provider啊,开始的时候晕没晕?!晕没晕?!感觉干的事儿都差不多啊,到底用哪个啊?!别告诉我你们几个就是为了跟我炫耀兄弟多!! 好吧...也许是我的问题,脑仁儿确实不够大,反正我是晕的直挠墙~ 那到底什么时候该请他们谁出场啊? 经过挠墙之后挠官网文档挠google挠源码挠例子试验,终于让我把他们的区别给挠出

桂电在线_微信公众平台开发之-运用angularjs显示学校公告新闻列表和详情页面

折腾angularjs的感悟 几天折腾,总的来说看了很多博客,要么不是最新的技术文档,要么写得不够完整,因为别人是基于他们的理解写的技术博客代码不一定会贴完整,所以一旦你用的是最新的想要看完整的实例就只能去官网查阅文档,现在通过实现下面的两个功能才真正了解什么是前端的MVVM框架. 另外,总结下我理解中的MVVM框架:后台php是MVC框架,一直做法是php处理数据,然后把数据渲染到模板,然后后台返回html页面给浏览器, 现在前端mvvm(model-view-viewmodel)就是:mod