【发布时间】:2016-09-02 07:45:42
【问题描述】:
我一直按照 React Native 文档的this page 中关于如何连接原生模块的步骤进行操作。
文档讨论了如何将事件从本机代码发送到 Javascript,但是我需要能够在另一个方向发送事件,即从 Javascript 到本机代码。这可能与 DeviceEventEmitter 有关吗?
我的用例如下,Native Module 加载了一个 React Native 包,在本例中是一个登录页面。输入登录详细信息并根据 API 检查,当响应返回时,我需要能够将结果从 Javascript 返回到 Native 模块,以便我可以解决 React 方法上的原始 Promise。
有什么想法吗?
谢谢。
【问题讨论】:
-
不,
DeviceEventEmitter不适用于本机事件处理。您很可能需要公开一个本机方法,然后可以从 JS 调用该方法。您也许可以使用 DeviceEventEmitter 作为解决 JS 端承诺的一部分,但更有可能您只是为您的本机模块提供回调以进行调度(并在 JS 端解决承诺。)问题可以简化为获得更多答案,因为它有层次,可能无法回答。
标签: android reactjs react-native react-native-android