у меня это работает.При получении сообщения сокета значение отправляется немедленно и каждую секунду после этого (с увеличением возраста), пока сокет не будет получен снова.
Однако я хочу, чтобы он излучал каждую секунду независимо от того, был ли получен сокет.Так что он начинал излучать каждую секунду, но когда сокет получал, свойства менялись на новые, и они передавались каждую секунду.
Не могу понять, что делать.
updated: Observable<TargetDevice>;
this.updated = socketService.onMessage.pipe(
filter(
message =>
message.messageType === SocketIoMessageType.Device &&
message.data.id === this.id
),
map((message: SocketIoMessage) => <Device>message.data),
tap(d => this.setProps(d)),
switchMap(d =>
timer(0, 1000).pipe(
tap(tick => (this.age = d.age + tick)),
map(() => this)
)
)
);