【发布时间】:2018-02-19 03:26:33
【问题描述】:
我有一个 Search 组件,它将数组中的值输出到 ResultItem 子组件,每个子组件都有一个带有 onClick 属性的按钮。我将一个函数绑定到按钮以获取我单击的数组项的值。
我所做的是每次单击每个 ResultItem 按钮时,我都会分别获得 0、1、2、3、4、5、6 的值,这是完美的,但我不需要数组索引,我需要这些值那些索引
class ResultItem extends Component {
constructor(props) {
super(props);
this.handleClick = this.handleClick
}
handleClick(index) {
// index = this.props.applications[0]
// index = this.props.applications.map(obj => obj.videoId[0])
console.log('this click', index)
}
render() {
// console.log ('myProps', this.props.applications[0]);
const {applications} = this.props;
return (
<div>
{
applications.map((app, k) => {
return (
<Card key={k} style={styles.appCard}>
<CardMedia style={styles.appMedia}>
<div>
<Drafts color={white} style={styles.iconer}/>
</div>
</CardMedia>
<CardTitle key={k} title={app.videoId} subtitle="Application"/>
{/* <div key={k}><h3>{app}</h3></div> */}
<CardText>
<div>
<div>Status:
<b>test</b>
</div>
</div>
</CardText>
<FloatingActionButton
style={styles.addButton}
backgroundColor={'#CC0000'}
onClick={this.handleClick.bind(this, k)}
>
<ContentAdd/>
</FloatingActionButton>
</Card>
)
})
}
</div>
);
}
}
到目前为止我已经尝试过:
如果我使用:
index = this.props.applications[0]
我在我点击的 ALL 按钮上获得数组的第一个值并
如果我使用:
index = this.props.applications.map(obj => obj.videoId[0])
每次单击时,我都会在另一个数组中获取数组中每个项目的第一个字母,有什么方法可以获取我单击的 元素的值,如果可以的话如何?
【问题讨论】:
标签: javascript arrays reactjs jsx