如何在React Anitial中处理多输入



我想知道为什么此代码不起作用:

<TextInput 
  style={style.inputLogin} 
  onChangeText={this.handleInputChange} 
  value={this.state.login} 
/>

使用功能:

  handleInputChange = (event) => {
    console.log(event.target.name);
    this.setState({
      [name]: value
    });
    console.log("name => ", [name]);
    console.log("value => ", value);
  }

我尝试了很多事情,但是我无法获得目标表格。我应该为每个输入做一个功能吗?似乎很愚蠢:/事件仅包含表单的值。当然我可以这样做:

 <TextInput 
  style={style.inputLogin} 
  onChangeText={(value) => this.setState({value})) 
  value={this.state.login} 
/>

,但这不是我想要的。我想要一些更通用的东西,可适用于每个输入

请帮助我;)

根据doc

onChangeText回调在文本输入的文本 变化。更改的文本作为单个字符串参数传递给 回调处理程序。

因此,OnchangeText传递的值是字符串,而不是事件。在您的handinginputChange中,您可以像

一样对待text
  handleInputChange = (text) => {
    console.log(text);
    // ...
  }

为了仅使用一个函数处理多个文本输入,请像以下方式自定义:

<TextInput 
  style={style.inputLogin} 
  onChangeText={(text) => this.handleInputChange(text, "Something to tell your function you're calling it from first textinput")} 
  value={this.state.login} 
/>

,然后

  handleInputChange = (text, fromWhichTextInputAreYouCallingMe) => {
    console.log(text);
    this.setState({
      login: text
    });
  }

相关内容

  • 没有找到相关文章

最新更新