react双向绑定多个输入框

目标:双向绑定多个输入框

import React, { Component } from "react";

class Test extends Component {
  constructor() {
    super();
    this.state = {
      List: [
        {
          text: "公司",
          value: "",
        }
      ]
    };
  }

  // 双向绑定提交 使用箭头函数的写法不用在事件里绑定this, 如onChange={this.handelChange.bind(this)}
  handelChange = event => {
    let e = event.target;
    const List= this.state.List;
    List.map((item, index) => {
      if (item.text === e.name) {
        item.value = e.value;
      }
    });
    this.setState({ List: List});
  };

  render() {
    // 输入框遍历
    const ListItem = this.state.List.map((item, index) => (
      <div key={index}>
        <input
          type="text"
          value={item.value}
          name={item.text}
          onChange={this.handelChange}
        />
      </div>
    ));

    return (
      <div className="footer">
     	 <ListItem /> 
      </div>
    );
  }
}
export default Test;

猜你喜欢

转载自blog.csdn.net/qq_36990322/article/details/88942871