我有一个带3条路线的DrawerNavigator路由器。 当我只将Page1和Page2放在路线上时没有任何错误, 但是当我添加Page3路线时,它有一个错误“路线'Page3'应该声明一个屏幕。”。我相信Page2和Page3具有相同的代码结构,只有渲染View才有所不同。有人能告诉我发生了什么吗? 这是完整的代码。
import { DrawerNavigator } from "react-navigation";
import SideBar from './SideBar';
import Page 1 from './Page1';
import Page 2 from './Page2';
import Page 3 from './Page3';
const DrawerNav = DrawerNavigator(
{
Page1: { screen: Page1 },
Page2: { screen: Page2 },
Page3: { screen: Page3 },
},
{
contentComponent: props => <SideBar {...props} />,
}
);
export default DrawerNav;
答案 0 :(得分:0)
这是错误并通过以下步骤解决:
首先调用DrawerNav一次,然后将代码汇总到export default DrawerNav = DrawerNavigator .....
并删除最后一行!这是结果:
import { DrawerNavigator } from "react-navigation";
import SideBar from './SideBar';
import Page 1 from './Page1';
import Page 2 from './Page2';
import Page 3 from './Page3';
export default DrawerNav = DrawerNavigator(
{
Page1: { screen: Page1 },
Page2: { screen: Page2 },
Page3: { screen: Page3 },
},
{
contentComponent: props => <SideBar {...props} />,
}
);
然后手动删除缓存并使用npm i
更新项目,然后测试我希望你的问题解决了,当你看到:)