Я пытаюсь динамически создать набор пунктов меню, используя данные, полученные из json. В настоящее время я пытаюсь сделать это путем сопоставления значений с реквизитами, но где-то у меня что-то не получается.
Вот код, который я использую, чтобы попытаться сделать это:
Const Generate = () => {
{data.items.map(({id, url, title}) => (
<MenuItem key={id}>
<Link to={url}> {title} </Link>
</MenuItem>
))
console.log('lol')}
}
и вот компонент, который пытается это использовать. Закомментировано, это выглядит и хорошо работает, пока жестко запрограммировано.
const Navigation = ({}) => (
<React.Fragment>
<Layout>
<Sider
breakpoint="xs"
collapsedWidth="0"
onBreakpoint={broken => {
}}
onCollapse={(collapsed, type) => {
}}
>
<div className="logo">
<h1 style={{ color: 'white', paddingLeft: 20, paddingTop: 26}}>
{Generate}
</h1>
</div>
<Menu theme="dark" mode="inline" defaultSelectedKeys={['1']}>
{Generate()}
{/* <Menu.Item key="1">
<Link to="/" > Hjem </Link>
</Menu.Item>
<Menu.Item key="2">
<Link to="/skjema"> Mine Skjema </Link>
</Menu.Item>
<Menu.Item key="3">
<Link to="/pasient"> Mine Pasienter </Link>
</Menu.Item>
<Menu.Item key="4">
Søk
</Menu.Item>
<Menu.Item key="5">
Filtrer
</Menu.Item> */}
</Menu>
</Sider>
<Layout>
<Header className="site-layout-sub-header-background" style={{ padding: 0 }} />
<Content style={{ margin: '24px 16px 0' }}>
<div className="content">
<Switch>
<Route exact path={"/"} component={Dashboard} />
<Route exact path="/Skjema" component={MineSkjema} />
<Route exact path="/Pasient" component={MinePasienter} />
</Switch>
</div>
</Content>
<Footer />
</Layout>
</Layout>
</React.Fragment>
)
export default withRouter(Navigation);
для справки, вот структура json:
const data =
{
"items": [
{
"id": 1,
"url": "/",
"title": "Hjem"
},
{
"id": 2,
"url": "/Skjema",
"title": "Mine Skjema"
},
{
"id": 3,
"url": "/Pasient",
"title": "Hjem"
},
{
"id": 4,
"url": "/Search",
"title": "Søk"
}
]
}
Где я делаю ошибку?