Javascript 反应导航链接不使用条件堆栈渲染

Javascript 反应导航链接不使用条件堆栈渲染,javascript,reactjs,react-native,react-navigation,Javascript,Reactjs,React Native,React Navigation,我正在制作一个expo(react native)项目并使用react导航 我根据用户是否登录到我的应用程序使用条件堆栈渲染。我还需要使用深度链接连接到我的应用程序并打开特定屏幕。当我使用冷启动的url运行我的应用程序时,它工作得很好,但是如果应用程序已经启动并且我使用了深度链接,它就不工作了(屏幕不会改变) 这是我的密码: import React,{useState,useffect}来自“React”; 从“@react-navigation/native”导入{NavigationCon

我正在制作一个expo(react native)项目并使用react导航

我根据用户是否登录到我的应用程序使用条件堆栈渲染。我还需要使用深度链接连接到我的应用程序并打开特定屏幕。当我使用冷启动的url运行我的应用程序时,它工作得很好,但是如果应用程序已经启动并且我使用了深度链接,它就不工作了(屏幕不会改变)

这是我的密码:

import React,{useState,useffect}来自“React”;
从“@react-navigation/native”导入{NavigationContainer}”;
从“世博链接”导入*作为链接;
从“./Store”导入useStore;
从“/AuthStack”导入AuthStack;
从“/AppTabs”导入AppTabs;
const prefix=Linking.createURL(“/”);
导出默认函数路由(){
const[data,setData]=useState();
//这些是仅用于AuthStack的屏幕
常量链接={
前缀:[前缀],
配置:{
屏幕:{
登录:“登录”,
注册:“注册”,
EmailValidation:“EmailValidation”,
},
},
};
const handleDeepLink=(事件)=>{
const eventData=Linking.parse(event.url);
setData(事件数据);
};
useffect(()=>{
const getInitialUrl=async()=>{
const initialURL=await Linking.getInitialURL();
如果(初始URL){
setData(Linking.parse(initialURL));
}
};
Linking.addEventListener(“url”,handleDeepLink);
如果(!数据){
getInitialUrl();
}
return()=>{
Linking.removeEventListener(“url”,handleDeepLink);
};
}, []);
//假设用户变量设置为null或false
返回(
{用户?:}
);
}
以下是验证堆栈屏幕:

从“React”导入React;
从“@react navigation/stack”导入{createStackNavigator};
从“./Screens/Login”导入登录名;
从“./屏幕/寄存器”导入寄存器;
从“./屏幕/EmailValidation”导入EmailValidation;
const Stack=createStackNavigator();
导出默认函数AuthStack(){
返回(
无效的
}}
initialRouteName=“登录”
>
);
}
感谢阅读并询问我是否需要更多信息/规格