问题是功能构造函数()和componentDidMount()在加载选项卡导航器时被调用。 而且每次用户到达名为myScreeen的屏幕时,我都需要调用函数,例如 我们该怎么做?如何在TabNavigator中显示屏幕时启动功能? [反应导航]
0
A
回答
-1
我发现黑客:
<Navigator
onNavigationStateChange={(prevState, currentState) => {
const getCurrentRouteName = (navigationState) => {
if (!navigationState) return null;
const route = navigationState.routes[navigationState.index];
if (route.routes) return getCurrentRouteName(route);
return route.routeName;
};
let currentRoute = getCurrentRouteName(currentState);
if(currentRoute == "A") {
console.log("TRIGGER")
}}/>;
然后你听日志中您的组件,如:
componentDidMount() {
let slf = this;
let log = console.log;
console.log = function(txt) {
if(txt == "TRIGGER") {
slf.myFunction(); // CALL HERE YOUR FUNCTION
} else {
log.apply(console, arguments);
}
}
}
1
React-Navigation提供了一个onNavigationStateChange道具,您可以在导航状态更改时使用它来调用方法。 screen tracking example向您展示了一个可以获取新状态的密钥和路由名称的示例。
从例如,在getCurrentRouteName
方法,你可以做const route = navigationState.routes[navigationState.index];
一旦你retrived的route
,你可以找到通过调用route.key
和route.routeName
密钥和路由名称。
相关问题
- 1. 反应导航 - 从TabNavigator导航到StackNavigator
- 2. 如何在启动时自动导航到屏幕
- 3. 如何在应用程序启动时显示锁定屏幕?
- 4. 如何在应用程序启动时显示主屏幕?
- 5. 反应导航(TabNavigator)不起作用
- 6. 如何仅在应用程序启动“新鲜”时才显示启动屏幕?
- 7. 屏幕没有导航反应原生
- 8. 如何隐藏反应导航的TabNavigator的称号,我想只显示图标
- 9. React-navigation:如何添加未在TabNavigator中显示的导航?
- 10. 如何启动显示“声音和显示”屏幕的活动
- 11. 如何在启动屏幕后放置导航栏?
- 12. 反应本机屏幕加载功能
- 13. 启动屏幕不显示为iOS 9
- 14. 在反应导航中放置常用屏幕的位置?
- 15. 反应导航 - 动画,替换屏幕和标签
- 16. 如何在应用程序启动时显示Android偏好设置屏幕?
- 17. 启动时显示导航应用中的最后一个UIView
- 18. Android - 拖动屏幕导航
- 19. iOS通用应用程序 - 启动时显示空白屏幕
- 20. 显示空白屏幕 - 反应原生
- 21. 反应导航:TabNavigator中的动态标题。未在对象中定义
- 22. 如何在反应天然使用反应导航
- 23. 启动屏幕使用IBM Worklight for android在开始时显示空白屏幕
- 24. 如何使用TabNavigation在反应导航中显示标题
- 25. iOS启动屏幕不显示
- 26. 启动屏幕后,简单的反应本机应用程序(与反应原生导航)崩溃
- 27. 在屏幕加载时启动地图功能。 iOS,Swift
- 28. 如何表示故事板中的启动屏幕
- 29. 启动屏幕从第三方应用程序启动时重新显示
- 30. Android:在启动时显示此屏幕复选框?
有问题,你可以帮助请(注释行)?非常感谢你 https://jsfiddle.net/gdydL0p4/ –
@ScoopDevek为此,我没有看到通过当前React-Navigation implmenetaion的直接解决方案,我的同事指出这个插件:https:// github .com/satya164/react-navigation-addons,你可以在这里阅读关于此功能的讨论:https://github.com/react-community/react-navigation/issues/51 – dotcomXY
谢谢,我会发布如果我找到解决方案 –