Передача отсканированных данных штрих-кода на второй экран - PullRequest
3 голосов
/ 13 марта 2019

Я пытаюсь передать данные, полученные при сканировании штрих-кода. Я могу напечатать данные, используя JSON.stringify (data) , и данные передаются, но я просто не могу их отобразить.

Передача данных успешно с:

_handleBarCodeRead = data => {
Alert.alert(
  'Scan successful!',
  JSON.stringify(data)
);

const { navigate } = this.props.navigation;
navigate('KnownProduct', {data})
};

Попытка визуализации данных на этой странице:

  render(){
    const { navigate } = this.props.navigation;
    return(
        <View style={styles.container}>
            <Text>{this.props.navigation.state.params.data.toString}</Text>
        </View>
    );

Я знаю, что навигация работает правильно, потому что, если я жестко закодирую значение, экран будет перемещаться после сканирования штрих-кода и отображать жестко запрограммированное значение. Тем не менее, я думаю, что я пытаюсь неправильно вызвать данные с помощью: this.props.navigation.state.params.data.toString , но безуспешно выясняю, как отобразить переданные данные.

Кто-нибудь отреагирует местным специалистам, способным помочь новичку?

ОК .... Итак, я понял это ... благодаря одному комментатору, который указал, что я должен передать данные следующим образом:

navigate('KnownProduct', {data: data})

И то, чего не хватало на странице перенаправления, было:

<Text>{this.props.navigation.state.params.data.data}</Text>

data.data получил меня!

Ответы [ 2 ]

0 голосов
/ 14 марта 2019

попробуйте

 navigate('KnownProduct', {data:data.data})
<Text>{this.props.navigation.getParam('data')}</Text>
0 голосов
/ 13 марта 2019

Попробуйте это:

navigate('KnownProduct', {data:JSON.stringify(data)})

И

<Text>{this.props.navigation.state.params.data}</Text>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...