Я пытаюсь вернуться к предыдущему виду в моем реагировать родное приложение, используя этот кодкнопку Назад реагировать родной андроид
'use strict';
var React = require('react-native');
var {
AppRegistry,
Component,
StyleSheet,
Text,
View,
BackAndroid,
Navigator
} = React;
var HomePage = require('./HomePage');
class DetailsPage extends Component{
constructor(props){
super(props);
}
render(){
return(
<View style={styles.container}>
<Text style={styles.text}>
{this.props.description}
</Text>
</View>
)
}
}
BackAndroid.addEventListener('hardwareBackPress', function() {
this.props.navigator.pop(); // line 32
return true;
});
var styles = StyleSheet.create({
container: {
flex: 1
},
text:{
color:'#000',
textAlign:'center',
fontWeight:'bold',
flex:1,
fontSize:20
},
});
module.exports = DetailsPage;
При отладке я вижу, что задняя событие успешно обнаружен, но он выходит из строя на этой линии this.props.navigator.pop()
давая мне эту ошибку.
Не удается прочитать свойство 'реквизита' из undefinedhandleException @ D: \ Реагировать \ Kora \ node_modules \ реагировать родной \ Библиотеки \ JavaScriptAppEngine \ Initialization \ ExceptionsMana ...: 61handleError @ D: \ Реагировать \ Kora \ node_modules \ react-native \ Libraries \ JavaScriptAppEngine \ Инициализация \ InitializeJava ...: 80ErrorUtils.reportFatalError @ D: \ React \ Kora \ node_modules \ react-native \ packager \ react-packager \ src \ Resolver \ polyfills \ error-guard. ... : 28guard @ D: \ React \ Kora \ node_modules \ react-native \ Libraries \ Utilities \ MessageQueue.js: 43callFunctionReturnFlushedQueue @ D: \ Реагировать \ Kora \ node_modules \ реагировать родной \ Библиотеки \ Utilities \ MessageQueue.js: 86onmessage @ debuggerWorker.js: 39
мое предположение, что это this.props
не могут быть доступны вне класса скобки, но я не знаю, как преодолеть эту проблему. если я ставлю BackAndroid.addEventListener
внутри класса он дает мне ошибку
UnExpectedToken
Спасибо за ваш ответ. Он работал, но с 'this.props.navigator.pop();' вместо 'this.navigator.pop();' .. пожалуйста, отредактируйте ответ, чтобы принять его –
ой, просмотрел его.рад, что это может помочь, хотя – stinodes
@Stinodes Это не работает для меня:/он дает мне эту ошибку 'undefined не является объектом (оценка 'this.props.navigator.pop()')'. У меня есть тот же самый код, который вы разместили в компоненте, где у меня есть мой «Навигатор» – corasan