React native React Native Expo App-如何在同一页面中导出多个组件

React native React Native Expo App-如何在同一页面中导出多个组件,react-native,expo,React Native,Expo,我已经在我的应用程序中设置了基本导航,现在还想添加一个抽屉菜单。到目前为止,我已经实现了抽屉工作所需的一些功能,但它不能与我的导航一起工作,我只能有一个或另一个 下面是我的route.js中的一些代码 const AppStack = createStackNavigator ( { Home: { screen: HomeScreen }, Users: { screen: UserScreen } }, { initialRouteName: "Home&q

我已经在我的应用程序中设置了基本导航,现在还想添加一个抽屉菜单。到目前为止,我已经实现了抽屉工作所需的一些功能,但它不能与我的导航一起工作,我只能有一个或另一个

下面是我的route.js中的一些代码

const AppStack = createStackNavigator
(
 {
   Home: { screen: HomeScreen },
   Users: { screen: UserScreen }
 },
 {
   initialRouteName: "Home"
 }
)

const AuthStack = createStackNavigator
(
 {
   Login: LoginScreen,
   Register: RegisterScreen
 }
)

const DrawerNavigator = createDrawerNavigator
(
 {
   HomeScreen,
   ProfileScreen,
   SettingsScreen
 }
) 

export default createAppContainer(
createSwitchNavigator(
{
  Loading: LoadingScreen,
  App: AppStack,
  Auth: AuthStack,
  Drawer: DrawerNavigator
},
{
  initialRouteName: "Loading"
}
)
)

我尝试分别导出这两个组件,但我在某个地方看到,您只能有一个默认导出。

没错,您只能有一个默认导出。可以有多个命名导出,也可以有一个默认导出和多个命名导出

如果您有:

const sayHello = () => {};
const sayGoodbye = () => {};
默认导出和命名导出

export default sayHello;
export { sayGoodbye }

import sayHello, { sayGoodbye } from 'your-path';
多个命名导出

export { sayHello, sayGoodbye }

import { sayHello, sayGoodbye } from 'your-path';

通过将DroperNavigator添加到我的AppStack解决了问题

如果两个导出需要共享相同的标识符,例如,createAppContainer需要与createSwitchNavigator和DroperNavigator一起使用,该怎么办?