【发布时间】:2018-04-04 21:00:14
【问题描述】:
我在反应渲染中映射一个数组。渲染了多个 DOM。
每个 DOM 都绑定了一个点击事件处理程序。其中显示了一些点击细节。
我想触发对该数组最后一个元素的自动点击,并将该事件传递给 clickHandler。
{
historyData.map((heading, index) => {
return(
<div className="history-node-container" key={index}>
//This is where click handler is being called.
<div className="history-node" onClick={(e) => {this.handleHistoryClick(e)}}>
<span className="history-title">{heading.action}</span>
<input type="hidden" value={heading.comment} className="comment-hidden" />
<input type="hidden" value={heading.by} className="comment-by-hidden" />
<input type="hidden" value={heading.role} className="comment-role-hidden" />
<input type="hidden" value={heading.added_at} className="comment-added-hidden" />
<span className="history-date">{moment(heading.added_at).format("MMMM Do, YYYY")}</span>
</div>
</div>
)
})
}
而clickHandler代码为:
handleHistoryClick(event){
event.stopPropagation();
//Some Code To Display Information Using "event"
}
现在我想做的是如果在映射中元素是最后一个我想触发自动点击并相应地显示它的信息。
我将如何做到这一点?
【问题讨论】:
-
@ShubhamKhatri,我的问题与你提到的问题太不同了。
-
你的问题是获取对最后一个元素的引用。为什么不能为所有这些添加一个 ref,在你的情况下 ref 将是一个数组并且只访问最后一个。并在其上触发事件,您可以参考上述问题
-
在下方查看我的答案
标签: javascript jquery arrays reactjs