我有一个可观察的对象,它应该监视具有类型的每条聊天消息'private'
所以我想做的是使用filter()rxjs 中的函数来观察每个具有类型的聊天消息private,这样我就可以在我的变量中使用它chatMessagePrivate$
这是我尝试过的:
export type ChatType = 'private' | 'standard';
export class ChatMessage {
uid?: string;
chatRoomUid: string;
type: ChatType;
}
chatMessagePrivate$: Observable<ChatMessage[]>;
ngOnInit() {
this.chatMessagePrivate$ = this.chatRoom$.pipe(
switchMap((chatRoom: ChatRoom) => this.chatMessageService.getAllByChatRoomUid$(chatRoom.uid) // this function returns every message from the uid of the chatroom
.filter(chatRoom => 'private')
)
);
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:Type 'string' is not assignable to type 'boolean'
我如何使用filter()该类型获取所有 ChatMessage 'private'?
我有一个组件,单击它时会发出一个简单的字符串
我的组件的 HTML:
<div (click)="emitSomething($event)"></div>
Run Code Online (Sandbox Code Playgroud)
我的组件的 TypeScript:
@Output() someString: EventEmitter<string> = new EventEmitter();
emitSomething(event: string) {
this.someString.emit(event)
}
Run Code Online (Sandbox Code Playgroud)
现在,我想将这个简单的字符串传递给另一个组件,以便我可以在其他组件中使用它,我该怎么做?
我在第二个组件中尝试的内容:
@Output() someString: EventEmitter<string> = new EventEmitter();
emitSomething(event: string) {
this.someString.emit(event)
}
Run Code Online (Sandbox Code Playgroud)
我的第二个组件的 TypeScript:
@Output() someString: EventEmitter<string> = new EventEmitter();
variable: string; // This variable should have the string value of my first component
Run Code Online (Sandbox Code Playgroud)
编辑:这是我执行此操作时控制台输出的内容
Can't bind to 'someString' since it isn't a known property of 'component-one'.