【发布时间】:2020-09-21 21:37:13
【问题描述】:
在我的 React Native 应用程序中,我使用 react-navigation 版本 5。
如何将导航对象传递给BottomNavigation中的场景?
这是我创建 BottomNavigation 的组件:
import React from 'react';
import { BottomNavigation } from 'react-native-paper';
// Components
import CodeScanner from '../../../screens/vendors/CodeScannerScreen';
import Home from '../../../screens/home/HomeScreen';
import Vendors from '../vendors/VendorsStack';
// Routes
const homeRoute = () => <Home />;
const vendorsRoute = () => <Vendors />;
const scanRoute = () => <CodeScanner />;
const HomeTabs = (props) => {
const [index, setIndex] = React.useState(0);
const [routes] = React.useState([
{ key: 'home', title: 'Home', icon: 'newspaper-variant-multiple' },
{ key: 'vendors', title: 'Vendors', icon: 'storefront' },
{ key: 'codescanner', title: 'Scan', icon: 'qrcode-scan' }
]);
const renderScene = BottomNavigation.SceneMap({
home: homeRoute,
vendors: vendorsRoute,
codescanner: scanRoute
});
return (
<BottomNavigation
navigationState={{ index, routes }}
onIndexChange={setIndex}
renderScene={renderScene}
labeled={false} />
);
}
export default HomeTabs;
在这段代码中,我确实在道具中有导航,但无法找到将导航传递到屏幕的方法。另请注意,供应商实际上是一个堆栈导航器。特别是,我需要访问导航以便打开其他屏幕。
【问题讨论】:
标签: react-native react-navigation react-navigation-v5 react-native-paper