Expo Router useRoute 参数未传递

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

我刚刚在我的 expo React 本机应用程序上从 sdk 51 更新到 sdk52。 在更新之前,我尝试使用如下参数推送一条路线:

onPress={() => router.push(
../routes/workoutDetail?id=${workout.id}
)}

但是现在我尝试在锻炼详细信息中访问的参数未定义

useEffect(() => { 
    const workoutId = route.params?.id; 
    if (workoutId) {
      fetchWorkoutDetails(workoutId);
    }
  }, [route.params?.id]);

我也尝试获取这样的参数:

const params = useLocalSearchParams();
  const { id = } = params;

但没有任何效果

我将不胜感激任何帮助:)

react-native expo sdk expo-router
1个回答
0
投票

你尝试过这样传递参数吗?

router.push({
    pathname: '../routes/workoutDetail',
    params: {
        id: workout.id
    }
})

此外,使用 ../routes 可能不是定义路径名的最佳方法。最好使用全局命名空间”

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