【问题标题】:Navigation container disappears after splash screen启动屏幕后导航容器消失
【发布时间】:2021-08-19 13:28:49
【问题描述】:

我昨晚实现了一个启动画面,今天早上我注意到它正在占用我的底部标签导航器。我重新创建了问题here

在小吃中,最初您会看到底部的标签导航器。如果您进入 App.js 并取消对启动画面的调用的注释,您将看到我在说什么。

有谁知道我该如何确保不会发生这种情况? 启动画面本身就有点额外,所以如果你们认为最好先从这个开始,然后去做其他事情,我愿意接受建议!

谢谢你,我比你知道的更感激。

【问题讨论】:

    标签: reactjs react-native react-navigation react-navigation-bottom-tab


    【解决方案1】:

    您看不到底部选项卡的原因是您不再渲染应用程序的该部分。您只是在SplashScreen 中渲染<Home/> 组件,这并不是真正的底部选项卡屏幕,而是整个底部选项卡的一部分。

    要使其工作,您可以执行以下操作,

    App.js 中,导出你的MyTabs 函数。

    export function MyTabs() {
     // all the previous stuff
    }
    

    然后将其导入到SplashScreen 中,如下所示,

    import {MyTabs} from '../App' 
    

    现在将<Home></Home> 替换为<MyTabs/>

    这是Snack

    不完全确定这是否是一个好习惯,将不得不挖掘一些文档,但适用于您的用例。

    【讨论】:

    • 您是否能够将其实现到示例中并使其工作?对嵌套导航容器执行此操作时出现错误。
    • 是的,我已经在上面发布了小吃链接。 snack.expo.dev/@nithinpp69/splash-animation。我再检查一次
    • 我确实再次检查过,似乎它正在工作。你能分享一下你面临的错误吗?。
    • 酷。现在澄清你之前的评论I get a different error when adding the brackets around MyTabs in the import as well。我们需要在括号内导入它,因为函数MyTabs 不是App.js 的默认导出。如果您在不带括号的情况下进行导入,它将从App.js 导入默认项目,在我们的例子中是函数App()
    • 还有一件事,因为您尝试了不带括号的导入,它导入了 App(),其中包含 <NavigationContainer/>。现在上面的错误是有道理的,因为现在你再次渲染整个App.js。这就是关于嵌套导航容器的错误的原因。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多