将数据传递给所有组件| angular 4
问题描述:
我有组件有数组,我想将此对象传递给所有其他组件。 在我的组件我有一个函数获取基于cookie值的数据,然后我想把对象数据放在其他组件{{lang.data1}}中。将数据传递给所有组件| angular 4
this.lang=this._webService.getlang(this.cookieValue);
如何在所有其他组件中使用lang。
答
您可以使用dependency injection,注入的语言服务,或者您可以为您BaseComponent
export class BaseComponent {
public language: any;
constructor() {
this.language = configuration.language;
}
}
export class BlockComponent extends BaseComponent {
constructor() {
super();
console.log(this.language);
}
}
答
使用带有阵列作为服务的组成部分。在根组件中初始化该服务,并在需要的任何组件处导入该服务数组。
答
如果这是一个小到中等规模的应用
然后你让你的服务序使用事件发射器
将信息传递给所有的组件,但如果这是一个大的应用程序,我会建议你给用户ngrx i:所有数据存储在特定位置的redux方法。
如果你想检查REDX是如何工作的,请在git hub看看这个回购在ngrx商店有一个非常简单的演示。
您是否尝试过使用共享服务? – Abrar