我正在尝试通过使用 Firebase 作为后端构建一个新应用程序来自学 react-native。目前,我正试图在我添加内容之前了解 react-navigation 导航器以在我的应用程序上布置屏幕。
我遇到的问题是堆栈导航器无法导航。它呈现下一个屏幕,并将其添加到页面,然后启动转换 - 但无论出于何种原因,转换都不会发生。所以会触发以下事件:* willBlur (on the originating screen)
*
onTransitionStart`(在堆栈转换上)
我假设我做错了什么,所以我重写了三四次,最后一次我把它归结为问题的最简单的迭代,只有一个堆栈导航器和两个屏幕 - 我我遇到了同样的问题。我已经浏览了几次文档,我认为在这一点上我只是一个大白痴。
这是我展示它的整个应用程序
import React from 'react';
import { Text, TouchableOpacity } from 'react-native';
import { createAppContainer, createStackNavigator } from 'react-navigation';
class Main extends React.Component {
navigateToList() {
const { navigation } = this.props;
navigation.navigate('list');
}
render() {
return (
<TouchableOpacity
onPress={this.navigateToList.bind(this)}
>
<Text>Go To Listing Page</Text>
</TouchableOpacity>
);
}
}
class List extends React.Component {
render() {
const { refreshing } = this.props;
return (
<Text>LISTING PAGE</Text>
);
}
}
const MainStack = createStackNavigator({
mode: { screen: Main },
list: { screen: List }
}, {
initialRouteName: 'mode',
});
const App = createAppContainer(MainStack);
export default () => (
<App />
);
我的 package.json 有以下内容:
"react": "16.8.3",
"react-native": "0.59.3",
"react-native-firebase": "^5.4.0",
"react-native-gesture-handler": "^1.3.0",
"react-navigation": "^3.11.0"
目前这只是显示“主”屏幕,而不是导航到“列表”屏幕。按钮也停止响应,所以看起来事情开始工作但由于某种我无法解释的原因从未完成。