【问题标题】:got confused on deeplink in React navigation version 5对 React 导航版本 5 中的深层链接感到困惑
【发布时间】:2020-06-23 00:05:17
【问题描述】:

嗨,我的导航代码首先卡在嵌套导航器中的结构深层链接上 它只是在标签内堆叠

function HomeStack() {
return (
    <Stack.Navigator>
        <Stack.Screen
            name="Home"
            component={HomeScreen}
        />
        <Stack.Screen
            name="SinglePost"
            component={SinglePost}
        />
    </Stack.Navigator>
  );
}

和底部标签

  <Tab.Screen name="Home" component={HomeStack} />

所以这是反应导航的配置部分,用于组织深层链接 首先我放了一个堆栈父级

const config = {
Home: {
    path: "stack",
    initialRouteName: "SinglePost",
    screens: {
        Home: "home",
        SinglePost: {
            path: "post/:post_id",
            parse: {
                post_id: Number,
            }
        }
    }
  }
};

然后当使用

导航到此屏幕时
xcrun simctl openurl booted kriss://post/3232

这里是结果

感谢提前

【问题讨论】:

    标签: react-native react-navigation react-navigation-v5


    【解决方案1】:

    问题在于getStateFromPath 函数的当前实现,它从给定路径创建导航状态。解析: 之后的参数的正则表达式如下所示: const match = new RegExp('^' + escape(pattern).replace(/:[a-z0-9]+/gi, '([^/]+)') + '/?'); 所以它只会正确解析字母数字参数。它很快就会改变,现在请使用例如postId 而不是 post_id,它应该可以正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-28
      • 1970-01-01
      • 1970-01-01
      • 2012-01-08
      相关资源
      最近更新 更多