美文网首页前端实用案例程序员
react 新增节点 删除节点 往数组里面添加对象

react 新增节点 删除节点 往数组里面添加对象

作者: 一只大橘 | 来源:发表于2019-04-11 15:13 被阅读1次

记录下这个小功能点,一起学习 共勉
https://github.com/Akaten/reactShowDom

DF227.png

import React, { Component } from 'react';
import './App.css';

class App extends Component {

  constructor(poper){
    super(poper)
    this.state={
      listconpanys:[{unitname:"",unitphone:""}],
      listconpany:[{unitname:"",unitphone:""}],
    }
  }

  //公司信息添加删除
  addcompany(){
  //id 以时间戳为key 在删除的时候作用
    this.state.listconpany.push({unitname:'',unitphone:'',id:new Date().getTime()})
    this.setState({
      listconpanys:this.state.listconpany
    })
  }
  changecompany({target}){
    const {value,name}=target;
    const nameAttr = name.split('_')
    let listconpany=this.state.listconpany
    listconpany[nameAttr[1]][nameAttr[0]]=value;

    this.setState({
      listconpany
    })
  }
  delcompany(index){
    let lists=this.state.listconpany;
    if(lists.length===1){
      alert("至少留一项")
      return;
    }
    lists.splice(index,1);
    this.setState({listconpany:lists})
  }

  showlist(){
    console.log(this.state.listconpanys)
  }

  render() {
    let showdom;
    showdom= <div>
      {
          this.state.listconpanys &&this.state.listconpany.map((item,i)=>{
            return(
                <div  key={item.id} className={'inputbox'}>
                  <div  onChange={this.changecompany.bind(this)}>
                    <input type="text" name={'unitname_'+i} placeholder={'输入姓名'}/>
                    <input type="text"  name={'unitphone_'+i}  placeholder={'输入电话号码'}/>
                    <a className={'delbtn'} onClick={()=>this.delcompany(i)}>删除</a>
                  </div>
                </div>
            )
          })
      }
      <div className={'widthbox'}>
        <a className={'addbtn'} onClick={()=>this.addcompany()}>新增</a>
      </div>
    </div>

    return (
      <div className="App">
        {showdom}

        <div  className={'showlist'}>
          <button onClick={this.showlist()}>显示</button>
        </div>
      </div>
    );
  }
}

export default App;


相关文章

  • react 新增节点 删除节点 往数组里面添加对象

    记录下这个小功能点,一起学习 共勉https://github.com/Akaten/reactShowDom

  • DOM操作

    DOM 文档对象模型,操作【获取/新增插入/删除/修改/复制/替换】文档中的节点节点:【node】元素节点,文本节...

  • js dom节点操作

    获取dom节点 新增dom节点 删除dom节点

  • day6-web前端

    一.基础语法(对象) 二.DOM获取节点 三.DOM间接获取节点 四.创建添加和删除节点 五,删除广告 六.动态添...

  • Redis集群动态增加或者删除节点

    redis集群动态增加或者删除节点 前言 首先新增需要添加的节点,这里添加7007 和 7008 修改一些配置文件...

  • JavaScript基础知识点--DOM操作之节点

    DOM之节点 添加节点 删除节点 修改节点 查找节点 添加节点 create 系列方法 document.crea...

  • 前端常见面试题(十四)@郝晨光

    怎样添加、移除、复制、创建、查找节点 创建节点 删除(移除)节点 添加节点 替换节点 复制节点 查找节点通过doc...

  • DOM

    一、对象基础(补充) 二、DOM获取节点 三、间接获取节点 四、DOM节点的添加和删除 五、DOM属性操作 六、练...

  • 2017-03-11 JS学习笔记 am

    创建节点 创建节点一般通过 document 设置属性 添加节点添加节点,一般通过它的父节点 删除节点 插入节点一...

  • zookeeper java api 使用

    zookeeper java api 创建 新增节点 删除节点 查看节点是否存在 1.准备 首先idea ...

网友评论

    本文标题:react 新增节点 删除节点 往数组里面添加对象

    本文链接:https://www.haomeiwen.com/subject/rpitwqtx.html