加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

react-native – BackHandler不会返回超过1个屏幕

发布时间:2020-12-15 05:05:20 所属栏目:百科 来源:网络整理
导读:我在每个屏幕上都有这个代码.按下 android后退按钮返回1个屏幕.再次按下android后退按钮不会做任何事情.只要堆栈中有更多屏幕,预期结果就是继续回归.少了什么东西? componentWillMount() { BackHandler.addEventListener('hardwareBackPress',() = { this.p
我在每个屏幕上都有这个代码.按下 android后退按钮返回1个屏幕.再次按下android后退按钮不会做任何事情.只要堆栈中有更多屏幕,预期结果就是继续回归.少了什么东西?
componentWillMount() {
    BackHandler.addEventListener('hardwareBackPress',() => {
        this.props.navigation.goBack();
        return true;
    });
}

componentWillUnmount() {
  BackHandler.removeEventListener('hardwareBackPress')
}
经过一些试验和错误后,此代码按预期工作.我相信我的初始代码实际上并没有删除事件监听器.
componentWillMount() {
    BackHandler.addEventListener('hardwareBackPress',this.backPressed);
}

componentWillUnmount() {
    BackHandler.removeEventListener('hardwareBackPress',this.backPressed);
}

backPressed = () => {
    this.props.navigation.goBack();
    return true;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读