javascript - 如何使用 react 导航从标题中的按钮将 `navigate` 转到新屏幕?

标签 javascript reactjs react-navigation

我正在使用 react-navigation 并想在我的标题右侧添加一个按钮,用于导航到不同的屏幕。但是在设置 navigationOptions 时,我想知道如何才能访问 navigate按下按钮时调用的回调中的函数:

const RootNavigationStack = StackNavigator({
  PokemonList: {
    screen: PokemonListWrapper,
    navigationOptions: {
      title: ({state}) => `Pokedex`,
      header: ({ state, setParams }) => {
        return {
          visible: true,
          right: (
            <Button
              title={'Add'}
              onPress={() => // navigate to new screen here
            />
          ),
        }
      }
    },
  },
, {
  headerMode: 'screen'
})

有什么想法可以实现吗?我正在考虑使用 withNavigation,但我仍然不太清楚它是如何工作的。

最佳答案

另一个答案适用于旧版本的 React Navigation。

对于新版本,试试这个:

static navigationOptions = ({ navigation }) => ({
        headerRight: (
            <Button 
                title='Setting' 
                onPress={ () => navigation.navigate('RouteName') }                
                backgroundColor= "rgba(0,0,0,0)"
                color="rgba(0,122,255,1)"
            />
        )});

关于javascript - 如何使用 react 导航从标题中的按钮将 `navigate` 转到新屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43112550/

相关文章:

javascript - 如何在某个特定组件发出某些内容时让其他组件监听,包括 Stackblitz 演示

javascript - 为什么我必须将所有脚本都放在 jquery mobile 中的 index.html 中

javascript - 为什么我的 html 文件突然不工作了?

javascript - JS 仅适用于相关项目的条件

javascript - 将值从 p5 sketch 传递到 React(使用 react-p5-wrapper)

reactjs - React Typescript - 在路由中传递时如何将类型添加到 location.state

ios - 导航栏和标签栏没有一起出现

reactjs - React Native navigation.state.params 始终未定义

javascript - 在 react 导航 TabNavigator 中动态启用/禁用选项卡

javascript - 如何从网站访问 USB 内存棒?