无法清除react-native中TextInput的值

时间:2019-05-29 04:16:50

标签: ios

enter image description here,当我使用react-native的TextInput时,此问题在ios中显示,但是在使用软键盘时却无法键入中文,因此我修改了picture1之类的代码,但是出现了一个新问题,当我输入要发送的键时,TextInput的值无法清除。 我该怎么办?enter image desenter code herecription here

 <TextareaItem clear={true}  type="text" ref="text" value={this.state.meg}
 editable={true} disabled={false} onChange={(value) => {
                                    if (Platform.OS =='ios'){
                                        this.meg = value
                                    } else {
                                        this.setState({
                                            meg:value
                                        })}}} /> 

    sendMeg = () => {
        let message = ''
        if (this.meg !== '')
        messahe = this.meg
        }else{message = this.state.meg}
      this.meg = ''
      this.setState({  meg:''})
}

解决这个问题https://github.com/CHANOMA/react-native/pull/3/files#diff-8eb50d68d87e28556c034717cd58a86e

2 个答案:

答案 0 :(得分:0)

this.state.text设置为最初的空字符串‘’

在组件中添加一个实际的占位符,并将其值设置为字符串‘Enter text…’

将方法submitAndClear添加到您的课程中,并将组件的onPress属性设置为this.submitAndClear

将道具clearButtonMode='always’添加到<TextInput />组件-这将使您可以随时清除文本

以下内容可用于清除文本

submitAndClear = () => {
  this.props.writeText(this.state.text)

  this.setState({
    text: ''
  })
}

你很好走!!

答案 1 :(得分:0)

将此代码添加到您要重置meg字段的位置:

this.setState({meg: ''})