react如何实现删除功能
本文讲解"react怎么实现删除功能",希望能够解决相关问题。
react实现删除功能的方法:1、给li标签添加一个点击事件,代码如“ <li key= {index} onClick={this.handleItemClick.bind(this, index)}>{value}</li>”;2、通过列表点击事件“handleItemClick(index) {...}”实现删除功能即可。
React实现TodoList删除功能
要实现点击列表中的某一项,就把该项删除
1.给li标签添加一个点击事件:handleItemClick
<li key= {index} onClick={this.handleItemClick.bind(this, index)}>{value}</li>
2.点击事件函数:
// 列表点击事件 handleItemClick(index) { const list = [...this.state.list]; list.splice(index, 1); this.setState({ list: list }) }
完整代码如下:
import React, {Component, Fragment} from 'react'; class TodoList extends Component { constructor(props) { super(props); this.state = { inputValue: '', list: [] } } handleInputChange(e) { this.setState({ inputValue: e.target.value }) } // 松开键盘会触发该事件 handleKeyUp(e) { // 判断是不是点的回车键 if (e.keyCode === 13) { const list = [...this.state.list, this.state.inputValue]; this.setState({ list: list, inputValue: '' }) } } // 列表点击事件 handleItemClick(index) { const list = [...this.state.list]; list.splice(index, 1); this.setState({ list: list }) } render() { return( <Fragment> <input value={this.state.inputValue} onChange={this.handleInputChange.bind(this)} onKeyUp={this.handleKeyUp.bind(this)}/> <ul> { this.state.list.map((value,index) => { return ( <li key= {index} onClick={this.handleItemClick.bind(this, index)}>{value}</li> ) }) } </ul> </Fragment> ) } } export default TodoList;
关于 "react怎么实现删除功能" 就介绍到此。希望多多支持编程宝库。
object.assign()如何使用:本文讲解"object.assign()怎么使用",希望能够解决相关问题。object.assign()方法用于将所有可枚举属性的值从一个或多个源对象(sources)分配到目标对象(target), ...