【发布时间】:2020-03-10 16:54:45
【问题描述】:
我对 JS 和 React 以及一般的编码非常陌生。我正在尝试使用 onClick 从数组中删除一个项目,如下所示:
const { Component } = React;
class Board extends Component{
constructor(props) {
super(props);
this.state = {
comments: [
'I like Rosie',
'I like you',
'I like bacon',
'lalalala'
],
}
}
removeComment = (e) =>{
var filteredArray = this.state.comments.filter(item => item !== e.target.value)
this.setState({comments: filteredArray});
console.log(e.target.value)
}
eachComment = (text, i) => {
return ( <p id={i} key={i} > comment: {text} {i}</p> )
}
render(){
console.log('render');
return (
<div className="gif-list" onClick={this.removeComment}>
{this.state.comments.map(this.eachComment)}
</div>
);
}
}
ReactDOM.render(
<Board/>,
document.querySelector('#mount'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
<div id="mount"><div>
虽然没有发生太多事情。我的 console.log(e.target.value) 以未定义的形式返回。我做错了什么?
我已尝试查看其他答案,但对其他类似问题实施(对我而言)抽象解决方案对我不起作用。
提前致谢,对于这么简单的问题,我们深表歉意。
【问题讨论】:
-
a
<div>没有值。
标签: javascript reactjs