首页 > 解决方案 > 当我在注册 React Navigation 5 后尝试导航到主页时,如何绕过“功能组件无法给出参考”?

问题描述

我目前正在为我的应用程序进行身份验证,除了用户登录后的导航之外,我已经完成了所有工作。我对 React Nav 5 很陌生,似乎无法理解它。我一直在关注 udemy 指南,但我认为 React Nav 4 正在被使用,我似乎无法找到如何做到这一点,我在下面提供了我的代码和相关的屏幕截图。我要做的是在用户单击注册按钮后进入提要页面。到目前为止,我已经将应用程序与后端和 mongoDB 连接起来,这一切都运行良好,一旦注册完成,我就无法导航到提要页面。

应用程序.JS

应用程序

导航参考

导航参考截图

授权上下文

authContext 截图

标签: reactjsreact-nativereact-navigationreact-navigation-v5react-navigation-stack

解决方案


您可以改为使用 createRef() 挂钩创建 NavRef,

导航Ref.js:

import * as React from 'react';

export const navigationRef = React.createRef();

export function navigate(name, params) {
    navigationRef.current?.navigate(name, params);
}

然后,从 App.js,您可以像这样使用 NavigationContainer 中的引用,

应用程序.js:

<NavigationContainer ref={navigationRef}>
    <AuthNavigator/>
</NavigationContainer>

推荐阅读