Получить текст из TextView и скопировать его в буфер обмена в реагировать родной - PullRequest
0 голосов
/ 11 ноября 2019

Я хочу скопировать значение в textview, нажав на иконку. Это то, что я сделал до сих пор:

  render() {
    return (
        <View style={{marginTop: 50, marginLeft: 50}}>
              <View>
                 <Text>Логин:</Text>
                 <Text ref='myText'>45645546654</Text>    
              </View>
            <TouchableOpacity onPress={() => Clipboard.setString(this.refs.myText.props.children)}>
              <View>
                <MaterialIcons 
                   name='content-copy' 
                   size={21} 
                 />
              </View>
            </TouchableOpacity>
        </View>
    );
  }

Рабочая область: https://snack.expo.io/@jasurkurbanov/updated2

Это немного работает на закуску. Но что, когда я запускаю его на своем телефоне, я получаю сообщение об ошибке.

Не определено не является объектом («оценивает» _this.refs.myText.props.children ')

1 Ответ

0 голосов
/ 11 ноября 2019

Вы должны определить свою переменную refs в constructor().

, например:

constructor() {
...
    this.textViewRefs = React.createRef();
...
}

render() {
    return (
...
        <Text ref={this.textViewRefs}>45645546654</Text>
...
    )
}

, посмотрите эту https://reactjs.org/docs/forwarding-refs.html для получения дополнительной информации

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...