首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >TypeError:(0,_native.createNavigatorFactory)不是函数

TypeError:(0,_native.createNavigatorFactory)不是函数
EN

Stack Overflow用户
提问于 2021-04-19 13:41:20
回答 1查看 456关注 0票数 0

我不明白问题出在哪里,首先我使用的是react-native-drawer v4,但是在我尝试使用‘@react- v5 /drawer’之后,它不起作用。一个能帮我改正错误的人。我将expo-CLI用于react原生应用程序。

在v5上移动的原因我觉得很容易添加自定义按钮或选项,因为我不知道谁在v4中添加自定义抽屉选项。

代码语言:javascript
复制
import React from 'react';
// import { createDrawerNavigator,   DrawerContentScrollView,  DrawerItemList, DrawerItem, } from 'react-navigation-drawer';
import {createDrawerNavigator,DrawerContentScrollView,DrawerItemList,    DrawerItem,} from '@react-navigation/drawer';



const AuthNavigation = createDrawerNavigator({
    Login:{screen:Login},
});
function CustomDrawerContent(props) {
    return (
      <DrawerContentScrollView {...props}>
        <DrawerItemList {...props} />
        <DrawerItem label="logout" onPress={() => alert('Link to help')} />
      </DrawerContentScrollView>
    );
  }
  
  const Drawer = createDrawerNavigator();
  
  function MyDrawer() {
    return (
      <Drawer.Navigator drawerContent={props => <CustomDrawerContent {...props} />}>
        <Drawer.Screen name="Users" component={AllUsers} />
        <Drawer.Screen name="Data" component={AllData} />
        <Drawer.Screen name="Add User" component={AddUser} />
        <Drawer.Screen name="Uploader" component={UploadFile} />
      </Drawer.Navigator>
    );
  }

// const AppNavigation = createDrawerNavigator({
//     Add_User:{
//         screen: AddUser,
//         navigationOptions:{
//             drawerLabel: 'Add User',
//         }
//     },
//     Data:{screen: AllData},
//     Users:{screen: AllUsers},
//     Uploader:{screen: UploadFile},
    
 
// })
const AuthLoadScreen = ({navigation}) =>{
    const _loadData= async ()=>{
        const isLoggedIn = await AsyncStorage.getItem('isLoggedIn'); 
        navigation.navigate(isLoggedIn !== '1' ? 'Auth':'App' );
    }
    _loadData();
    return(
       <View>
        <ActivityIndicator/>
        <StatusBar barStyle="default" />
       </View>
    );
}


export default createAppContainer(createSwitchNavigator(
    {
        AuthLoading:AuthLoadScreen,
        App:MyDrawer,
        Auth:AuthNavigation
    },{
        initialRouteName: 'AuthLoading'
    }
));
EN

回答 1

Stack Overflow用户

发布于 2021-05-04 02:57:41

面对同样的错误。解决了。试试这个:

代码语言:javascript
复制
npm install @react-navigation/native

代码语言:javascript
复制
yarn add @react-navigation/native@next

代码语言:javascript
复制
yarn add @react-navigation/native

文档:https://reactnavigation.org/docs/getting-started/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67156498

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档