【发布时间】:2019-01-02 09:29:14
【问题描述】:
我正在尝试在 React 中循环弹出窗口,但我不知道如何只打开一个触发元素。
this.props.Videos.map((video) => {
return (
<div onClick={this.onClick}>
<img src="https://blog.xenproject.org/wp-content/uploads/2014/10/Testing.jpg" alt=""/>
<h3>Text</h3>
<div style={{display: this.state.videoPopup === true ? "block" : "none"}}>
<video data-setup='{ "techOrder": ["youtube"], "sources": [{ "type": "video/youtube", "src": ""}] }'
className="video-js vjs-default-skin"
controls>
</video>
</div>
</div>
);
})) : null
OnClick 改变状态如下:
this.setState({
videoPopup: !this.state.videoPopup
});
【问题讨论】:
-
也许将视频对象保存在一个数组中,然后在map函数中获取每个视频的索引,并用它来改变相关视频的videoPopup?
标签: javascript reactjs loops popup