首页 > 解决方案 > 订阅具有 2 个参数的事件发射器?

问题描述

我的上下文是 React Native / RxJS / TypeScript

我正在尝试订阅具有 2 个参数的事件发射器。

函数原型是这样的:

handleUpdateValueForDiskStorage = (error: BleError | null, characteristic: Characteristic | null) => {

... }

当我尝试像下面这样订阅时,代码将无法编译:

this.emitter = fromEventPattern(this.addHandler, this.removeHandler);
this.rxSubscription = this.emitter.subscribe(this.handleUpdateValueForDiskStorage);

错误是:'(error: BleError | null, characteristic: Characteristic | null) => void' 类型的参数不可分配给'(value: any) => void' 类型的参数。

但是,似乎我只能从事件中获得一个论点。

我做了一些研究,发现了这个。这是关于将 2 个参数投影到一个数组中。

我不知道这是否仍然有效,并且似乎无法绕过它来做同样的事情。

标签: typescriptrxjsreactxpreact-native-ble-plx

解决方案


推荐阅读