reactjs - 我如何在类方法中使用反应导航?
问题描述
import * as React from 'react';
import { createAppContainer, createSwitchNavigator } from 'react-navigation';
import { createStackNavigator } from 'react-navigation-stack';
import { Text, View } from 'react-native';
class LoadingScreen extends React.Component {
dataCheck = () => {
for (i = 0; i < 5; i++) { // data loading time in real code
if (i == 4) {
this.props.navigation.navigate('AppStack')
}
}
}
render() {
return (
<View>
<Text>loading</Text>
{this.dataCheck}
</View>
);
}
}
class MainScreen extends React.Component {
render() {
return (
<View>
<Text>mainscreen</Text>
</View>
);
}
}
const AppNavigator = createStackNavigator(
{
main: MainScreen
},
{
initialRouteName: 'main'
}
)
const LoadNavigator = createSwitchNavigator(
{
load: LoadingScreen,
AppStack: AppNavigator
},
{
initialRouteName: 'load'
}
)
export default createAppContainer(LoadNavigator)
我试图在加载数据时显示加载屏幕。所以我在“LoadingScreen”类中编写了“dataCheck”方法,它一直等到数据被加载(上面代码中的语句)并导航到“AppStack”。但我认为“this.props.navigation.navigate('AppStack')”不起作用。如何在类的方法中使用反应导航?
解决方案
你只需要更换
{this.dataCheck}
和
{this.dataCheck()}
推荐阅读
- android - 在 Android Studio 上使用 JsonObjectRequest 在 Restful API 上添加参数
- vtk - 将 VTK 文件导入 Paraview 时遇到问题(读取 ascii 数据时出错)
- python - 如何根据一天在 URL 中传递开始日期和结束日期?
- javascript - 在行而不是列上使用 Google 可视化格式化程序
- python - 如何使用 Python 正确编码/解码 excel 文件?
- javascript - 何时使用 Vue 拆分成组件?
- java - 生菜无法弄清楚多级复制拓扑
- r - 如何计算数组和矩阵之间的距离
- c++ - RCPP - 没有用于调用“转换”的匹配函数
- python - 如何在 numpy 中获取两个索引数组之间的矩阵元素?