反应原生android后退按钮

时间:2017-04-19 05:14:50

标签: android react-native back-button

我正在尝试使用此代码

返回我的react本机应用中的上一个视图
componentDidMount() { 
    React.BackAndroid.addEventListener('hardwareBackPress', () => {
      AppViewStore.popRoute({ key: 'itemlist' })
    });
    var finaldata={user:1};
    OrderViewStore.createOrder(finaldata);
    OrderViewStore.getcartcount(finaldata);
  }

AppViewStore中的popRoute

popRoute() {
    this.routeStack.pop();
    this.routeStack2 = this.routeStack;
  }

但是它会抛出错误

undefined is not an object 
(evaluating '_react2.default.BackAndroid.addEventListener')

更正后=====>它的工作原理

componentWillMount() { 
     BackAndroid.addEventListener('hardwareBackPress', () => {
         AppViewStore.popRoute({ key: 'itemlist' })
         return true;
  });

1 个答案:

答案 0 :(得分:0)

BackAndroid不是React的一部分,而是React Native,所以在使用之前你应该像这样导入它:

import {
  BackAndroid,
} from 'react-native';

并使用它:

BackAndroid.addEventListener

而不是:

React.BackAndroid.addEventListener