【发布时间】:2023-04-03 23:15:02
【问题描述】:
我有一个菜单,由于 array.map 而呈现,但我也想渲染一个子菜单,但我找不到实现这一点的方法
例如,我已经正确完成了
import React from 'react'
export const Menu = () => {
const item = [
'option1',
'option2',
'option3',
'option4',
'opction5',
]
const subMenuItem = [
'2.option1',
'2.option2',
'2.option3',
'2.option4',
'2.option5',
'2.option6',
]
return (
<>
<div>
Hola
</div>
<ul>
{
item.map((x, index) => (
<li key={index}>
{x}
</li>
))
}
</ul>
</>
)
}
但是现在我想在 option2 上有一个子菜单,如果存在某个变量等于 item 中的选项的条件,则映射 subMenuItem 数组
上面映射中的一些东西,比如
if (x === 'option2') {
<ul>
subMenuItem.map((y,i)=>(
<li key={i*1000}
{y}
</li>
))
</ul>
类似的东西
提前致谢
【问题讨论】:
-
你是说conditional rendering
x !== 'opcion2' ? null : subMenuItem.map(...)吗? -
没错,我单独进行条件重新渲染没有问题,但我无法在之前的映射中找到实现此目的的正确方法
-
感谢@Jax-p 的帮助
标签: reactjs conditional-statements render