首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ReactJS动态遍历对象并显示4列

ReactJS动态遍历对象并显示4列
EN

Stack Overflow用户
提问于 2021-02-12 09:58:51
回答 1查看 27关注 0票数 0

我有一个reactjs应用程序,还有一个具有以下结构的statemonitors

这个对象是一个虚拟对象,但是我的对象具有如下相同的结构:

代码语言:javascript
复制
[
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
 { "key" : "value" },
]

我使用bootstraprowcol类来显示值。我的需求如下:

  1. 我想显示这些值的4列,因此每行都有4

因此,根据上面的对象,我有9数据集,这意味着它是3行,其中前两行各有4行,最后一行(第3行)只有一个值。

我该怎么做?

我目前正在进行如下操作,但得到的值与相同row中的row列相同。有人能帮帮我吗?

代码语言:javascript
复制
{Object.entries(this.state.monitors).map(([key, value]) => (
                    <div className="container">

                        <div className="row">
                            <div className="col-3">
                                <div className="card mb-3 " key={this.state.monitors.id}>
                                    <div className="card-header" style={value['overall_state'] == "OK" ? service_ok : value['overall_state'] == "Alert" ? service_alert : service_nodata}>
                                        <span><i className="fa fa-th"></i></span> {" "} {value["name"]}
                                    </div>
                                    <div className="card-body">
                                        <h5 className="card-title">{value['overall_state'] == "OK" ? <span><i style={{ color: "#2ce659" }} class="fa fa-check-circle"></i></span> : value['overall_state'] == "Alert" ? <span><i style={{ color: "#f24c3a" }} class="fa fa-times-circle"></i></span> : <span><i class="fa fa-exclamation-circle"></i></span>} Status - {value['overall_state'] == "OK" ? "Operational" : value['overall_state'] == "Alert" ? "Outage" : "Unknown"}</h5>
                                    </div>
                                </div>
                            </div>
                            <div className="col-3">
                                <div className="card mb-3 " key={this.state.monitors.id}>
                                    <div className="card-header" style={value['overall_state'] == "OK" ? service_ok : value['overall_state'] == "Alert" ? service_alert : service_nodata}>
                                        <span><i className="fa fa-th"></i></span> {" "} {value["name"]}
                                    </div>
                                    <div className="card-body">
                                        <h5 className="card-title">{value['overall_state'] == "OK" ? <span><i style={{ color: "#2ce659" }} class="fa fa-check-circle"></i></span> : value['overall_state'] == "Alert" ? <span><i style={{ color: "#f24c3a" }} class="fa fa-times-circle"></i></span> : <span><i class="fa fa-exclamation-circle"></i></span>} Status - {value['overall_state'] == "OK" ? "Operational" : value['overall_state'] == "Alert" ? "Outage" : "Unknown"}</h5>
                                    </div>
                                </div>
                            </div>
                            <div className="col-3">
                                <div className="card mb-3 " key={this.state.monitors.id}>
                                    <div className="card-header" style={value['overall_state'] == "OK" ? service_ok : value['overall_state'] == "Alert" ? service_alert : service_nodata}>
                                        <span><i className="fa fa-th"></i></span> {" "} {value["name"]}
                                    </div>
                                    <div className="card-body">
                                        <h5 className="card-title">{value['overall_state'] == "OK" ? <span><i style={{ color: "#2ce659" }} class="fa fa-check-circle"></i></span> : value['overall_state'] == "Alert" ? <span><i style={{ color: "#f24c3a" }} class="fa fa-times-circle"></i></span> : <span><i class="fa fa-exclamation-circle"></i></span>} Status - {value['overall_state'] == "OK" ? "Operational" : value['overall_state'] == "Alert" ? "Outage" : "Unknown"}</h5>
                                    </div>
                                </div>
                            </div>
                            <div className="col-3">
                                <div className="card mb-3 " key={this.state.monitors.id}>
                                    <div className="card-header" style={value['overall_state'] == "OK" ? service_ok : value['overall_state'] == "Alert" ? service_alert : service_nodata}>
                                        <span><i className="fa fa-th"></i></span> {" "} {value["name"]}
                                    </div>
                                    <div className="card-body">
                                        <h5 className="card-title">{value['overall_state'] == "OK" ? <span><i style={{ color: "#2ce659" }} class="fa fa-check-circle"></i></span> : value['overall_state'] == "Alert" ? <span><i style={{ color: "#f24c3a" }} class="fa fa-times-circle"></i></span> : <span><i class="fa fa-exclamation-circle"></i></span>} Status - {value['overall_state'] == "OK" ? "Operational" : value['overall_state'] == "Alert" ? "Outage" : "Unknown"}</h5>
                                    </div>
                                </div>
                            </div>
                        </div>


                    </div>
                ))}
EN

回答 1

Stack Overflow用户

发布于 2021-02-12 10:13:28

每一行都有12个虚拟1单元列.您使用3单元列,因此只有4将适合行,然后包装和重新开始。

您必须简单地迭代这个对象(就像现在所做的那样),并为每个值呈现单个col-3 div。确保将此循环包装在containerrow中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66169724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档