我有一个像这样创建的列表:
Empty Cache and Hard Reload
如何创建一个按钮,让我删除特定的div元素并减少状态限制?
答案 0 :(得分:2)
在React中,您必须将几乎所有内容绑定到数据。在您的示例中,所有这些项应由一些基础数据表示。这是一个非常基本的例子:
class Example extends React.Component {
constructor() {
super();
this.state = {
data: ['Item 1', 'Item 2', 'Item 3', 'Item 4', 'Item 5'],
};
}
removeItem(item) {
let data = this.state.data.filter((_, i) => i != item);
this.setState({ data });
}
render() {
return (
<div>
{this.state.data.map((item, i) => <div key={i} onClick={() => this.removeItem(i)}>{item}</div>)}
</div>
);
}
}
ReactDOM.render(<Example/>, document.getElementById('View'));
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="View"></div>
&#13;
答案 1 :(得分:0)
创建一个按钮
<button onClick={removeDiv}>
Remove div
</button>
添加功能removeDiv
function removeDiv(){
this.state.limit.shift()
this.setState({limit: this.state.limit})
}
更改状态时,组件将以新状态重新呈现。