react實(shí)現(xiàn)刪除功能的方法:1、給li標(biāo)簽添加一個(gè)點(diǎn)擊事件,代碼如“ <li key= {index} onClick={this.handleItemClick.bind(this, index)}>{value}</li>”;2、通過(guò)列表點(diǎn)擊事件“handleItemClick(index) {…}”實(shí)現(xiàn)刪除功能即可。
本教程操作環(huán)境:Windows10系統(tǒng)、react18.0.0版、Dell G3電腦。
react怎么實(shí)現(xiàn)刪除功能?
React實(shí)現(xiàn)TodoList刪除功能
要實(shí)現(xiàn)點(diǎn)擊列表中的某一項(xiàng),就把該項(xiàng)刪除
1.給li標(biāo)簽添加一個(gè)點(diǎn)擊事件:handleItemClick
<li key= {index} onClick={this.handleItemClick.bind(this, index)}>{value}</li>
登錄后復(fù)制
2.點(diǎn)擊事件函數(shù):
// 列表點(diǎn)擊事件 handleItemClick(index) { const list = [...this.state.list]; list.splice(index, 1); this.setState({ list: list }) }
登錄后復(fù)制
完整代碼如下:
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 }) } // 松開鍵盤會(huì)觸發(fā)該事件 handleKeyUp(e) { // 判斷是不是點(diǎn)的回車鍵 if (e.keyCode === 13) { const list = [...this.state.list, this.state.inputValue]; this.setState({ list: list, inputValue: '' }) } } // 列表點(diǎn)擊事件 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;
登錄后復(fù)制
推薦學(xué)習(xí):《react視頻教程》