【问题标题】:How to get currently focus Tab name in React navigation如何在 React 导航中获取当前焦点选项卡名称
【发布时间】:2018-11-22 03:32:57
【问题描述】:

我在反应导航中使用标签导航器。我想在更改标签时检测当前焦点标签。
任何帮助将不胜感激!

我正在使用: - 反应原生:0.57.4,反应导航:2.16.0

【问题讨论】:

    标签: reactjs react-native react-navigation


    【解决方案1】:

    我找到了答案。

    class MyScreen extends Component {
    
      static navigationOptions = () => {
        return {
          tabBarOnPress({ navigation, defaultHandler }) {
    
            navigation.state.params.onTabFocus('tab_name');
    
            defaultHandler();
          }
        };
      };
    
      componentDidMount() {
        this.props.navigation.setParams({
          onTabFocus: this.getCurrentTab
        });
      }
    
      getCurrentTab = (tabName) => {
        console.log("current tab >>>>>>", tabName);
      };
    }
    

    //////////第二个解决方案/////////////

    可以使用NavigationEvents组件订阅这些导航事件。

    • onWillFocus : 在聚焦标签之前
    • onDidFocus : 聚焦标签后
    • onWillBlur :在失去对选项卡的关注之前
    • onDidBlur : 在标签上失去焦点后

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-25
      • 2021-11-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多