我想在AppComponent中调用一个服务来获取一些数据,然后我想将它发送到另一个时候加载的另一个组件。如何确保可以在其他组件中捕获数据?我希望这个设置最小化API调用,因为我们从apis获得的相同数据在2-3个地方重用。
答案 0 :(得分:0)
您可以在服务中使用BehaviorSubject
。
当后来加载的组件注入服务并订阅BehaviorSubject
时,它将立即获得最后一次发射的值。
答案 1 :(得分:0)
您希望将数据存储在全局可注入服务中。在此服务中,您应该定义一个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);
}