• react todelist


    1.点击按钮提交,新增对象

      buttonChange() {
        this.setState({
          //展开运算符...this.state.list,生成一个全新的数组
          // list:[...this.state.list,this.state.inputValue]
          //后面是新加入的数组,两个组成一个新的数组
          list:[...this.state.list,this.state.inputValue],
          inputValue:''
    
        })
      }
    

     2.删除

    buttonDelete(index) {
        const  list=[...this.state.list];
        //删除方法splice,两个参数,第一个是索引,第2个是删除几个
        list.splice(index,1);
        this.setState({
           list:list
        })
      }

    3.记得使用方法要绑定this,改变this 的作用域

      this.handleChange = this.handleChange.bind(this);
        this.buttonChange = this.buttonChange.bind(this);

    代码:

    import React, { Component } from 'react';
    
    
    class App extends Component {
      constructor(props) {
        super(props);
        this.state={
            inputValue:'hello world',
            list:[]
        }
        //改变this 的作用域
        this.handleChange = this.handleChange.bind(this);
        this.buttonChange = this.buttonChange.bind(this);
    
      }
      render() {
        return (
            <div>
                <div>
                  <input type="text"
                   value={this.state.inputValue}
                   onChange={this.handleChange}
                 />
                  <button  onClick={this.buttonChange}>提交</button>
                </div>
                <ul>
                   {
                      this.state.list.map((item,index)=>{
                          return (
                            <li
                              key={index}
                              onClick={this.buttonDelete.bind(this,index)}
                            >
                               {item}
                            </li>
                          )
                      })
                   }
                </ul>
            </div>
        );
      }
      handleChange(e) {
        this.setState({
          inputValue:e.target.value
        })
      }
      buttonChange() {
        this.setState({
          //展开运算符...this.state.list,生成一个全新的数组
          // list:[...this.state.list,this.state.inputValue]
          //后面是新加入的数组,两个组成一个新的数组
          list:[...this.state.list,this.state.inputValue],
          inputValue:''
    
        })
      }
      buttonDelete(index) {
        const  list=[...this.state.list];
        //删除方法splice,两个参数,第一个是索引,第2个是删除几个
        list.splice(index,1);
        this.setState({
           list:list
        })
      }
    }
    
    export default App;
    

      

     演示:

  • 相关阅读:
    [Unity3D]查看与设置游戏帧数FPS
    [Unity3D]关于NaN(Not a Number)的问题
    Unity3D在WebPlayer模式下的异常上报探索
    .net错误处理机制
    .Net 下未捕获异常的处理
    Appstore 提交时错误
    播放器设置 Player Settings
    (转)WebApi发送HTML表单数据:文件上传与多部分MIME
    (转)那些年我们一起清除过的浮动
    AppCan上下拉列表刷新
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/9796602.html
Copyright © 2020-2023  润新知