我正在尝试更新我的应用程序,以便所显示的每辆汽车都带有删除按钮,该按钮将在单击后将其从数据库中删除。
在我的deleteButton组件中,有以下内容给我错误消息car is not defined
:
import React from 'react';
class DeleteButton extends React.Component {
constructor() {
super();
this.state = {
};
this.handleClick = this.handleClick.bind(this);
}
delete(car){
const data = this.state.data.filter(i => i.id !== car.id)
this.setState({data})
}
render() {
const label = 'Delete';
return (
<button className="delete-btn" onClick={this.delete.bind(this, car)}>{label}</button>
);
}
}
export default DeleteButton;
我应该如何定义car
?
答案 0 :(得分:0)
1。。您需要将汽车置于这种状态:
this.state = {
car: {
id: ''
},
};
但是问题是数据,您需要提供数据作为“删除组件”的道具。
然后从道具获取数据而不是从状态获取数据。
2。。然后onDelete函数更新状态:
delete(car){
const data = this.props.data.filter(i => i.id !== car.id)
this.setState({car: data})
}