只有当应用程序关闭时,React navigation Deeplink 的参数才会显示为未定义

问题描述 投票:0回答:1

我正在实现 React Native/Android/React 导航深层链接。

我正在使用react-native v0.68,react-navigation v6.xx

https://reactnavigation.org/docs/configuring-links/

  1. 应用程序打开状态下,无论是前台还是后台,将parse插入到deeplink中,触摸消息中的链接,移动到相应的路径,查看params的值。

  2. 如果在应用程序关闭时触摸同一个深层链接,它会移动到该路径,但解析值被确认为未定义。

2号的过程

2-1 在终端中输入下面的视频,并在android模拟器中查看。 npx uri-scheme 打开 myapp://init/main/home/eventdetails/1234 --android 或者, 构建 apk 后,在物理设备上链接 myapp://init/main/home/eventdetails/1234。

2-2 应用程序打开后,转到该路径。

2-3 用console.log查看param值,显示undefined。

`

const linking = {
    prefixes: ["myapp://"],
    Config: {
      screens: {
        init: {
          path: "init",
          initialRouteName: "main",
          screens: {
            main: {
              path: "main",
              screens: {
                home: {
                  path: "home",
                  screens: {
                    eventlist: {
                      path: "eventlist",
                    },
                    eventdetails: {
                      path: "eventdetails/:id",
                      parse: {
                        id: (id: any) => `${id}`,
                      },
                    },
                    screens: {
                      truckdetails: {
                        path: "truckdetails/:id",
                        parse: {
                          id: (id: any) => `${id}`,
                        },
                      },
                    },
                  },
                },
              },
            },
          },
        },
      },
    },
  };

`

当应用程序打开时。 `

Object {
   "initial": true,
   "params": undefined,
   "path": "init/main/home/eventdetails/1234",
   "screen": "1234",
   "state": undefined,
} :::params

`

当应用程序关闭时。

undefined :::params

即使应用程序关闭,我也想以与打开时相同的方式检查反应本机屏幕上的解析值。

android react-native react-navigation deep-linking react-native-deep-linking
1个回答
0
投票

您最终找到解决方案了吗?遇到同样的问题。

© www.soinside.com 2019 - 2024. All rights reserved.