我有一个从DropBox中提取的图像和标题索引.我的目标是能够点击一个标题并加载一个特定的项目,但是现在我只是试图将点击的标题的数据传递给一个组件.
我看过React教程,文档&其他类似的问题在这里(并且我担心这将被视为一个重复的问题),但我似乎无法找到一种方法来传递被点击的特定标题.我目前收到错误:无法读取undefined的属性’title’.
我已经设法通过console.log& amp;使用所有标题填充了ProjectTitle组件,但我对这个看似简单的障碍感到困惑.
谢谢
class ProjectTitle extends React.Component{
render() {
return super();
this.state = {
imageSource: [],imageTitles: [],}
}
componentwillMount(){
…
}
render(){
if(!this.state.imageSource.length)
return null;
let titles = this.state.imageTitles.map((el,i) =>
最佳答案
通常在这种情况下,您希望遵循以下结构:
> Click事件处理程序将activeTitle等状态属性设置为单击的id.
>需要设置其prop的元素(ProjectTitle)从其父状态(Index)获取它.
您的代码更改可能如下所示:
// in Index constructor
this.state = {
// stuff you already have...
activeTitle: null
}
this.handleItemClick = this.handleItemClick.bind(this);
// in Index
handleItemClick(title) {
this.setState({activeTitle: title});
}
// in Index.render() in the loop
// you might have you add some code to get titles[i]
原文地址:https://www.jb51.cc/js/429196.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。