android - 无法在 UseEffect React Native 上使用导航用于启动画面
问题描述
大家好,我正在尝试使用 Stack Navigator 制作启动画面。所以我有 3 个主文件 App.js、Home.js 和 SplashScreenJs。我希望我的启动画面在 5 秒后进入主页,但我负担不起。我能够将控制台日志与 UseEffect 一起使用,但不能与导航一起使用。它显示错误“ReferenceError:找不到变量:导航”
App.js 代码:
const Stack = createStackNavigator();
const App = () => {
return (
<NavigationContainer>
<Stack.Navigator
screenOptions={{
header: () => null
}}
>
<Stack.Screen
name='Splash Screen'
component={SplashScreen}
/>
<Stack.Screen
name='Home'
component={Home}
/>
</Stack.Navigator>
</NavigationContainer>
);
};
闪屏.js
const SplashScreen = () => {
useEffect(() => {
const timer = setTimeout(()=>{
navigation.navigate('Home')
}, 5000);
});
return (
<LinearGradient colors={['#53CDE2','rgba(83, 205, 226, 0.43)','rgba(83, 205, 226, 0.25)']} style={styles.SplashWrapper}>
<Image source={require('../assets/logo.png')}/>
<Text style={styles.SplashSlogan}>Well Organized, Better Day</Text>
</LinearGradient>
)
}
有人能帮助我吗 ?
解决方案
您必须使用如下所示的导航道具
const SplashScreen = ({navigation}) => {
useEffect(() => {
const timer = setTimeout(()=>{
navigation.navigate('Home');
}, 5000);
},[]);
推荐阅读
- python - 在字典中使用 head 访问数据框
- python-2.7 - UDP 服务器套接字无法解析所有接收到的数据
- webpack - 后端使用虚拟主机的 Webpack 4 Dev Server 配置
- amazon-web-services - AWS JIRA CloudFormation
- sql-server - 在连接表的任一侧启用级联删除
- apache-kafka - Kafka 巡航控制 - NumValidWindows: (0/0) (NaN%), NumValidPartitions: 0/844 (0.000%)
- c - C structure and malloc function
- amazon-web-services - 满足条件时以编程方式向 CloudWatch 发出警报
- hangouts-chat - 是否有在 Google(环聊)聊天中指定多行代码片段的语法?
- python - 计算正则表达式中的完整字符串或字符串子集