Angular 在两个标记之间传递数据
我在Angular 2中新增了一个,我想将数据从一个组件标记传递到另一个组件标记 组件标记1Angular 在两个标记之间传递数据,angular,Angular,我在Angular 2中新增了一个,我想将数据从一个组件标记传递到另一个组件标记 组件标记1 <div class="row"> <pie-chart></pie-chart> </div> 组件标签2 <div class="row"> <basic-table></basic-table> </div> 这两个组件都放在另一个组件html文件中。只需使用全局服
<div class="row">
<pie-chart></pie-chart>
</div>
组件标签2
<div class="row">
<basic-table></basic-table>
</div>
这两个组件都放在另一个组件html文件中。只需使用全局服务存储数据,然后使用相同的服务提取另一个组件中的数据只需使用全局服务存储数据,然后使用相同的服务提取另一个组件中的数据创建一个服务
import { Injectable } from '@angular/core';
@Injectable()
export class YourService {
private _data: any;
public store (data: any) {
this._data = data;
}
public restore (): any {
return this._data;
}
}
使用DI(依赖项注入)将其注入组件:
constructor(private\u myService:YourService){}
您可以在组件内部使用此服务:
this._myService.store({..});
let data = this._myService.restore();
创建一个服务
import { Injectable } from '@angular/core';
@Injectable()
export class YourService {
private _data: any;
public store (data: any) {
this._data = data;
}
public restore (): any {
return this._data;
}
}
使用DI(依赖项注入)将其注入组件:
constructor(private\u myService:YourService){}
您可以在组件内部使用此服务:
this._myService.store({..});
let data = this._myService.restore();
使用事件发射器,在其中一个指令中发生事件时发出事件。 另一个应该订阅该活动
import {EventEmitter} from 'angular2/core';
它具有以下定义类型
class EventEmitter {
constructor(isAsync?: boolean)
emit(value?: T)
subscribe(generatorOrNext?: any, error?: any, complete?: any) : any
}
有关更多详细信息,请参阅文档使用事件发射器,在其中一个指令中发生事件时发出事件。 另一个应该订阅该活动
import {EventEmitter} from 'angular2/core';
它具有以下定义类型
class EventEmitter {
constructor(isAsync?: boolean)
emit(value?: T)
subscribe(generatorOrNext?: any, error?: any, complete?: any) : any
}
有关更多详细信息,请参阅文档这些组件是如何相关的(父子、兄弟、无关、由路由器添加的…)这些组件是如何相关的(父子、兄弟、无关、由路由器添加的…)