【发布时间】:2020-09-25 23:44:28
【问题描述】:
我正在尝试编写一个仪表板侧边栏,其中包含几个“主要”按钮,这些按钮(通过 Bootstrap)折叠了一些“次要”按钮。我希望能够轻松地更新和设置整个事物的样式,因此编写静态标记是不可能的。这是数组中的一个对象:
const menuArray = [
{
primaryText: "Applications",
primaryIcon: "fa fa-rocket",
primaryURL: "/applications",
secondaries: [
{
secondaryText: "Softwares",
secondaryURL: "/softwares",
},
{
secondaryText: "Videogames",
secondaryURL: "/videogames",
},
{
secondaryText: "Tools",
secondaryURL: "/tools",
},
],
},
]
这里是渲染数组的函数,我只是通过 {renderMenuArray} 在 JSX 标记中调用它
const renderMenuArray = menuArray.map((menuItem) => (
<li className="py-2">
<button
data-target={`#${menuItem.primaryText}Submenu`}
data-toggle="collapse"
aria-expanded="false"
className="btn btn-dark btn-menu btn-block pl-0 mb-1"
>
<Link to={menuItem.primaryURL}>
<span className="mr-3">
<i className={menuItem.primaryIcon}></i>
</span>
{menuItem.primaryText}
</Link>
</button>
<div
className="card-body collapse ml-5"
id={`${socialItem.primaryText}Submenu`}
>
<ul className="list-unstyled">
<li>
<Link className="small" to="/applications/softwares">
<span className="mr-3">
<i className="fa fa-chevron-right"></i>
</span>
Softwares
</Link>
</li>
</ul>
</div>
));
我可以毫无问题地渲染“主要”对象,但我希望每个“主要”对象(父数组的每次迭代)都遍历“次要”数组的计数(这将是每个“主要”对象都不同)。
我是初学者。
【问题讨论】:
-
您应该显示您尝试在何处/如何为每个项目呈现
secondaries数组。应该只是在主块内运行menuItem.secondaries.map((subItem) => ...)的情况。 -
@lawrence-witt 非常感谢,它就像一个魅力。
标签: javascript arrays reactjs jsx