反应导航的DrawerNavigator调用抽屉关闭的功能

时间:2017-05-06 13:55:04

标签: react-native react-redux react-navigation

我想在抽屉关闭时发出一个动作。但我不知道我需要写什么功能,你能不能帮助我。

1 个答案:

答案 0 :(得分:2)

您需要自定义导航操作才能知道DrawerClose事件何时触发。这是一个简单的示例:

const MyAppDrawerNavigator = DrawerNavigator({
    //...
});

const defaultGetStateForAction = MyAppDrawerNavigator.router.getStateForAction;

MyAppDrawerNavigator.router.getStateForAction = (action, state) => {

    if (state && action.type === 'Navigation/NAVIGATE' && action.routeName === 'DrawerClose') {
        console.log('DrawerClose');
        //dispatch whatever action you want
    }
    return defaultGetStateForAction(action, state);
};

要了解有关如何自定义路由器的更多信息,请参阅here