我目前正在开发一个react-native应用程序,我们正在使用React“组件”(它不显示任何内容,只是充当调度程序)来完成JavaScript中的一些一次性请求。 JS代码非常简单:
import React from 'react'
import { AppRegistry, DeviceEventEmitter } from 'react-native'
class NativeEventDispatcher extends React.Component {
constructor() {
super()
console.log("anyone home?")
}
componentDidMount() {
DeviceEventEmitter.addListener('DoSomething', () => {})
}
render() {
return null
}
}
AppRegistry.registerComponent('NativeEventDispatcher', () => NativeEventDispatcher);
出于某种原因,在致电
之后val rootView = ReactRootView(context)
rootView.startReactApplication(reactInstanceManager, "NativeEventDispatcher", null)
addContentView(rootView, ViewGroup.LayoutParams(0, 0))
reactInstanceManager.onHostResume(this, this)
没有任何反应。组件未安装,JS文件中没有断点执行,构造函数中的日志永远不会打印。几乎就像组件挂载无声地失败一样。
之前有没有遇到过这个?任何潜在的解决方一直试图调试这一天大约没有运气。
答案 0 :(得分:0)
我不知道第二种东西,但我会先写一个这样的东西。
import React, { Component } from 'react';
import { View, AppRegistry, DeviceEventEmitter } from 'react-native';
class NativeEventDispatcher extends Component {
constructor(props) {
super(props)
console.log("anyone home?")
}
componentDidMount() {
DeviceEventEmitter.addListener('DoSomething', () => {})
}
render() {
return (
<View></View>
);
}
}
export default NativeEventDispatcher;
AppRegistry.registerComponent('NativeEventDispatcher', () => NativeEventDispatcher);
您应该使用导出默认值
导出您的班级