【发布时间】:2016-02-08 20:25:56
【问题描述】:
我想在 MyCustomModuleClass 中调用一个方法,从另一个类扩展 ReactContextBaseJavaModule
MyCustomModule.java
public class MyCustomModule extends ReactContextBaseJavaModule {
private ReactContext mReactContext;
public MyCustomModule(ReactApplicationContext reactContext) {
super(reactContext);
mReactContext = reactContext;
}
@Override
public String getName() {
return "CustomModule";
}
private void sendEvent(String eventName, Object params) {
mReactContext
.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
.emit(eventName, params);
}
}
我正在尝试这个..
OtherClass.java
public class OtherClass extends AnotherClass {
@Override
protected void eventOccurred(Context context) {
MyCustomModule RNC = new MyCustomModule(?);//-> Can't call without ReactContext
RNC.sendEvent("CustomEvent", ObjectData);
}
}
对不起,我对java一窍不通,谁能帮帮我?
有什么方法可以在 OtherClass 中获取 ReactContext 吗?
【问题讨论】:
-
它看起来不像你在 MyCustomModule 上调用一个有效的构造函数。也许这只是您在尝试创建一个简单示例时犯的一个错字。我不明白你为什么不能这样做。试试看吧。
-
是的,我做错了。让我更新一下我的问题。
-
我用另一种方式解决了我的问题,使用 LocalBroadcastManager。
-
@antihate - 你介意分享你的解决方案吗?这个问题让我抓狂..
-
这个问题在issues中得到了更多反馈:github.com/facebook/react-native/issues/5846
标签: java android react-native