gpt4 book ai didi

javascript - 如何从一个组件发布事件并从nativescript中的另一个组件接收事件

转载 作者:行者123 更新时间:2023-11-28 16:58:13 25 4
gpt4 key购买 nike

如何从一个组件发布自定义事件并从 native 脚本中的另一个组件接收它。

类似于:

ComponentOne.ts
this.event.publish('someEvent', {name: 'a name'})
<小时/>
ComponentTwo.ts
this.event.subscribe('someEvent', (data) => {
const name = data.name;
})

最佳答案

您可以使用subject对于本例

import { Injectable } from "@angular/core";
import { Subject } from "rxjs";

@Injectable()
export class MessageService {
private subject = new Subject<any>();

constructor() {}

sendMessage(message: any) {
this.subject.next(message);
}

getData() {
return this.subject.asObservable();
}
}

我在这里定义了2个方法。第一个方法使用 next() 将消息发送给下一个订阅者。因此,在您的组件中,您只需要像这样简单地订阅即可获取数据

private subscription$: Subscription;

public ngOnInit(): void {
this.subscription$ = this.messageervice
.getData()
.subscribe(data => { console.log(data); })
}

public ngOnDestroy(): void {
this.subscription$.unsubscribe();
}

关于javascript - 如何从一个组件发布事件并从nativescript中的另一个组件接收事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58468698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com