如何更改输入值的价值



对不起,我是新手反应本地的,并且想知道如何更改当前输入值?

与我一样,如果我直接输入一个新单词,则在不更改或替换新词的情况下继续出现上一个单词或以前的值。

类组件:

将输入的值保持在组件的状态下,该状态容纳此TextInput组件。

class ParentComponent extends React.Component {
  constructor (props) {
    super(props)
    this.state = { queryText: '' }
  }
  handleInputTextChange = (newText) => {
    this.setState({ queryText: newText })
  }
  render () {
    return (<View>
      <TextInput 
        onChangeText={this.handleInputTextChange} 
        value={this.state.queryText}
      />
    </View>)
  }
}

注意我如何使用onChangeTexthandleInputTextChange处理新值。

功能组件:

在功能组件中,我们使用钩子。要保持和更新文本值,我们使用useState

export default () => {
  const [text, setText] = useState("");
  return <TextView value={text} onChangeText={setText} />;
};

你好,您可以使用此方法:

this.state = {
  email: '13119165220',
}
onChangeText={text => this.setState({ email: text })} 

在功能组件中使用

export default () => {
const [text,setText] = React.useState("")
return <TextView
          value={text}
          onChangeText={setText} />
}

textInput需求值是在文本输入中显示的值。

并更新您使用OnChangeText的值,该值将调用您每次文本更改中的文本时指定的任何函数。

取决于您是否正在学习挂钩或没有代码的反应会更改:

带钩子:

import React,{useState} from 'react'
//others import
function MyTextInput (props){
     const [userInput,setUserInput] = useState()
return (
   <TextInput 
        value = {userInput}
        onTextChange = {(text) => setUserInput(text)} /> //is always better call another function
    )                                                    // where you can validate the input

如果您使用类和无钩编码的编码,则逻辑是相同的,只需更改语法:

import React,{Component} from 'react'
//other imports
class MyTextInput extends Component{
constructor(props){
   super(props)
   this.state = {
           userInput:''
   }
render(){
    return (
        <TextInput value = {this.state.userInput} 
             onChangeText = { text => this.setState({userInput:text}) />
    )
  }
}

在这里,文档的链接,您可以在其中找到TextInput接收到的所有道具,并说明:https://reaectnative.dev/docs/textinput

相关内容

  • 没有找到相关文章

最新更新