从TextView获取文本并将其复制到React Native中的剪贴板

时间:2019-11-11 05:57:34

标签: javascript reactjs react-native copy-paste

我想通过单击图标复制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>
    );
  }

工作区:enter image description here

它在小吃上有点用。但是当我在手机上运行它时会出现错误。

未定义不是对象(“评估'_this.refs.myText.props.children')

1 个答案:

答案 0 :(得分:0)

您应该在constructor()上定义refs变量。

例如:

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

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

查看此https://reactjs.org/docs/forwarding-refs.html以获得更多信息