有没有办法查看React navigation v5的导航堆栈中是否存在屏幕/路线



根据某个堆栈中是否存在屏幕,我需要能够在代码中执行不同的操作。我已经尽力了,但在这件事上什么也没找到。有没有一种简单的方法可以实现这一点?

如果你的意思是,你想获得当前导航器中的所有路线,那么我认为这将解决你的问题。

const navigation = useNavigation();
const routes = navigation.dangerouslyGetState().routeNames;

在v.6:中

const navigation = useNavigation();
const routes = navigation.getState().routeNames;

在我的v5.7中,它是:

const routes = navigation.getRootState().routeNames;

它返回所有可用路线的数组,所以我可以通过这样做来检查它是否存在:

if (routes.includes('YourRouteNameHere')) {
console.log('Route exist!');
}

相关内容

  • 没有找到相关文章

最新更新