angular2中的全局变量,其值可以更改
Global variable in angular2 whose value can be changed
我在引导使用全局变量时注入了一个服务:
bootstrap(AppComponent, [ GloablService ]);
global.service.ts
import {Http} from 'angular2/http';
import {Observable} from 'rxjs/Observable';
import {Observer} from 'rxjs/Observer';
import 'rxjs/add/operator/share';
export class GlobalService {
baseUrl:string;
constructor() {
this.baseUrl='http://localhost:8080';
}
setBaseUrl(url:string) {
this.baseUrl=url;
}
getBaseUrl() {
return this.baseUrl;
}
}
现在,我已经将这个服务与我的根组件一起引导,并且我能够成功地访问该变量。
但是,每当我更改嵌套组件中变量的值时,更改不会全局反映。
我也试着使用可观察性,但没有用。
有什么建议吗?
不要在任何组件上添加providers: [ GloablService ]
,否则组件将获得不同的实例。像您那样只在bootstrap()
提供一次,或者只在根组件AppComponent
提供一次。
相关文章:
- 全局变量和全局对象的属性之间有什么区别吗
- delete关键字在全局变量上的不同行为
- 在javascript函数中设置全局变量
- 如何将getJson的响应保存在全局变量中
- 从Javascript方法返回全局变量
- AngularJS中的封装窗口全局变量
- javascript隐式全局变量
- 如何从onclick函数设置全局变量并将其传递给另一个JS文件
- 如何使全局变量仅特定于该文件
- 在page.open()-PhantomJS中无法访问全局变量
- 使用全局变量来存储数字(JavaScript)
- 如何将变量声明为全局变量
- 在节点中创建文件全局变量
- 在Javascript中使用全局变量作为缓存是很好的
- 创建要在其他函数中使用的全局变量
- 为了避免创建全局变量,可以将所有变量分配给一个对象吗
- 函数中的innerHTML(全局变量?)
- 如何在javascript中为全局变量赋值
- angular2中的全局变量,其值可以更改
- 如何在Angular2中触发一个应用范围的事件或者观察一个全局变量?