Хорошо, сначала вопрос был довольно неясен, но я думаю, что могу понять, что вы имеете в виду. Таким образом, вы хотите отобразить свои данные из штрих-кода в какой-либо текстовой форме. Для этого сначала нужно изменить пару вещей:
state = {
hasCameraPermission: null, //we don't need that.
}
Вместо этого мы собираемся определить состояние в конструкторе:
constructor(props){
this.state = {
hasCameraPermission: null,
barcodeData: "",
barcodeType: ""
};
}
Тогда метод рендеринга становится таким:
render() {
if (this.state.hasCameraPermission === null) {
return <Text>Requesting for camera permission</Text>;
} else if (this.state.hasCameraPermission === false) {
return <Text>No access to camera</Text>;
}
return (
<View style={{width: 500 , height:500}}>
<BarCodeScanner
onBarCodeScanned={this.handleBarCodeScanned.bind(this)}
style={StyleSheet.absoluteFill}
/>
<Text>Bar code with type {this.state.barcodeType} and data {this.state.barcodeData} has been scanned!</Text>
</View>
);
}
Итак, теперь мы переходим к handleBarCodeScanned
-методу:
handleBarCodeScanned ( type, data ) {
this.setState({
barcodeType : type,
barcodeData : data
});
}
Я думаю, что это может быть.