将数据传递给所有组件| angular 4

将数据传递给所有组件| angular 4

问题描述:

我有组件有数组,我想将此对象传递给所有其他组件。 在我的组件我有一个函数获取基于cookie值的数据,然后我想把对象数据放在其他组件{{lang.data1}}中。将数据传递给所有组件| angular 4

this.lang=this._webService.getlang(this.cookieValue); 

如何在所有其他组件中使用lang。

+0

您是否尝试过使用共享服务? – Abrar

您可以使用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商店有一个非常简单的演示。

https://github.com/rahulrsingh09/AngularConcepts