我想调用AppComponent中的一个服务来获取一些数据,然后将其发送到在另一个时间加载的另一个组件。如何确保可以在其他组件中捕获数据?我希望这个设置最小化API调用,因为我们从API中获得的相同数据在2-3个地方被重用。
发布于 2017-08-25 19:12:05
您希望将数据存储在全局可注入的服务中。在此服务中,您应该定义一个BehaviorSubject。见下文。
@Injectable()
export class DataService {
// Can subscribe to and emit events from a BehaviorSubject
// BehaviorSubject can act like an event bus but will also return the last value in the stream upon subscription
public userSubject = new BehaviorSubject(null);
}发布于 2017-08-25 19:11:16
您可以在您的服务中使用BehaviorSubject。当稍后加载的组件注入服务并订阅BehaviorSubject时,它将立即获得最后发出的值。
https://stackoverflow.com/questions/45879972
复制相似问题