首页 > 解决方案 > 如何不使用 React Native Paper 的 BottomNavigation 保留页面的状态?

问题描述

在此处的文档https://callstack.github.io/react-native-paper/bottom-navigation.html#renderScene中,它声明“在初始渲染后,所有页面都保持渲染以保持其状态”。我不想要这个。相反,我希望每个页面都以在每次索引更改时最初具有的新鲜状态呈现。似乎应该有一个简单的答案。我注意到的一件事是,renderScene将为route已加载的每个(或页面)调用它,而不仅仅是当前选择的路由。例如下面的代码...

renderScene = {({ route, jumpTo }) => {
    console.log(route)
    switch (route.key) {
        case 'Home':
            return <AppStackScreen initialRouteName="Home" jumpTo={jumpTo} />;
        break;
        case 'VideosIndex':
            return <AppStackScreen initialRouteName="Videos" jumpTo={jumpTo} />;
        break;
        case 'VideosAdd':
            return <AppStackScreen initialRouteName="Add Video" jumpTo={jumpTo} />;
        break;
        case 'Login':
            return <AppStackScreen initialRouteName="Login" jumpTo={jumpTo} />;
        break;
        case 'Register':
            return <AppStackScreen initialRouteName="Register" jumpTo={jumpTo} />;
        break;
        case 'AccountProfile':
            return <AppStackScreen initialRouteName="Account Profile" jumpTo={jumpTo} />;
        break;
    }
}}

导航到 后将同时显示HomeVideosIndex路线VideosIndex路线

标签: reactjsreact-nativereact-native-paper

解决方案


推荐阅读