constant / value / js全局定义 这3者之间有什么区别?
认证0级讲师
1.js中的全局变量在整个全局空间内都是存在的,angular的两个方法产生的常量只在angular的上下文中有作用。2.angular中的constant()创建的是一个可以被配置的常量,而value()创建的是一个不可以被配置的常量。3.具体:constant()方法可以将一个已经存在的变量注册为服务,然后通过依赖注入,可以注入到应用的其他部分中去,注意:产生的常量不可以被装饰器拦截。4.value()方法和上面的方法基本一样,不同之处在于:使用constant()方法产生的常量可以通过.config来配置,但是value()产生的常量不可以配置。5.通常用value()来注册服务对象或者函数,而用constant()来配置数据。
angular
constant()
value()
装饰器拦截
.config
http://stackoverflow.com/a/13015756/2586541
1.js中的全局变量在整个全局空间内都是存在的,
angular
的两个方法产生的常量只在angular
的上下文中有作用。2.
angular
中的constant()
创建的是一个可以被配置的常量,而value()
创建的是一个不可以被配置的常量。3.具体:
constant()
方法可以将一个已经存在的变量注册为服务,然后通过依赖注入,可以注入到应用的其他部分中去,注意:产生的常量不可以被装饰器拦截
。4.
value()
方法和上面的方法基本一样,不同之处在于:使用constant()
方法产生的常量可以通过.config
来配置,但是value()
产生的常量不可以配置。5.通常用
value()
来注册服务对象或者函数,而用constant()
来配置数据。http://stackoverflow.com/a/13015756/2586541