reactjs - React Navigation StackNavigator 在 SwitchNavigation 中不起作用
问题描述
我正在使用 React Navigation 来实现身份验证。我希望如果有有效的令牌,用户将被定向到应用导航器。否则,他将被引导至 auth navigator。
在我的实现中,加载屏幕安装,还有身份验证,但我什么也没看到。
index.js:
import { createSwitchNavigator, createAppContainer } from 'react-navigation';
import app from './app';
import auth from './auth';
import loading from './loading-screen'
export default createAppContainer(createSwitchNavigator(
{
loading,
app,
auth
}
));
加载screen.js:
import React from 'react';
import {
ActivityIndicator,
AsyncStorage,
StatusBar,
View,
} from 'react-native';
export default class LoadingScreen extends React.Component {
constructor(props) {
super(props);
this.getUser();
}
getUser = async () => {
const token = await AsyncStorage.getItem('token');
this.props.navigation.navigate(token ? 'app' : 'auth');
};
render() {
return (
<View>
<ActivityIndicator />
<StatusBar barStyle="default" />
</View>
);
}
};
应用程序.js:
import React from 'react';
import { createStackNavigator } from 'react-navigation';
import { View, Text } from 'react-native';
const login = () => (
<View>
<Text>login</Text>
</View>
);
export default createStackNavigator({login});
如果我在没有createStackNavigator
功能的情况下从 auth.js 导出登录组件,它可以工作并且我在屏幕上看到登录。有了它,它不会。
解决方案
推荐阅读
- go - 如何解决x509:进行http请求时证书已过期或尚未生效
- mysql - 一个表中的所有值 UNION SELECT TOP N 来自另一个表的值
- python-3.x - 在 Python3 中,openpyxl 代码无法编译
- java - Firebase 实时数据库 android java
- nuxt.js - Tailwind group-hover 不起作用(即使使用默认变体)
- google-apps-script - 无法在 Google 应用程序脚本中发送具有多个抄送的电子邮件
- string - 持久性 Reader() 对象
- django - 从 WebsocketConsumer 更改为 AsyncWebsocketConsumer 的问题
- opengl - 您能否在顶点着色器中判断数据是使用 glDrawArrays() 还是 glDrawArraysInstancedBaseInstance() 发送的
- android - android,为什么库模块带有 minifyEnabled false