首页 > 其他 > 详细

react待办事项组件--新增与删除

时间:2019-07-07 00:52:15      阅读:227      评论:0      收藏:0      [点我收藏+]
import React,{Component,Fragment} from ‘react‘;
class TodoList extends Component{
    // state状态管理
    constructor(props){
        super(props);
        this.state={
            inputValue:‘hello‘,
            list:[‘111‘,‘222‘,‘333‘]
        }
    }
    // 页面渲染
    render(){
        return (
            <Fragment>
                <input
                    value={this.state.inputValue}
                    onChange={this.handleChange.bind(this)}
                />
                <button onClick={this.handleBtnClick.bind(this)}>提交</button>
                <ul>
                   {
                       this.state.list.map((item,index)=>{
                           return <li
                           key={index}
                           onClick={this.handleBtnDelete.bind(this,index)}
                           >{item}</li>
                       })
                   }
                </ul>
            </Fragment>
        )
    }
    // 其他方法定义
    // 输入框OnChange事件
    handleChange(e){
        this.setState({
            inputValue:e.target.value
        })
    }
    // 点击提交 输入框的内容加入列表项
    handleBtnClick(){
        console.log(this)
        this.setState({
            list:[...this.state.list,this.state.inputValue],
            inputValue:‘‘
        })
    }
    // 点击每个列表项,删除对应列表项
    handleBtnDelete(index){
        const list=[...this.state.list];//展开运算符 拷贝一份数据给list;  list!==this.state.list
        list.splice(index,1);
        this.setState({
            list:list
        })
    }
}
export default TodoList;

react待办事项组件--新增与删除

原文:https://www.cnblogs.com/laidans/p/11144634.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!