javascript - 无法在 JSX 中嵌入 javascript
问题描述
我在这里有点生疏,请注意确定发生了什么。这是我的文件:
import React from 'react';
import './Navbar.css';
import {CONTENT_LINKS_PRESENTABLE, CONTENT_LINKS_SLUG} from '../../globals'
import {Link} from "react-router-dom";
function Navbar() {
let jsx = (<div className="navbar">
<div className="navbar-item">
<Link to="/" id="navbar-brand">Daniel Pahor</Link>
</div>
<div id="navbar-items">
{for (let content in CONTENT_LINKS_PRESENTABLE) {
<div className="navbar-item">
<Link to={CONTENT_LINKS_SLUG[content]} className="navbar-link">{CONTENT_LINKS_PRESENTABLE[content]}</Link>
</div>
}}
</div>
</div>)
return jsx;
}
export default Navbar;
我收到以下错误:
Parsing error: unexpected token
在第 13 行(即当 for 循环开始时)
考虑到我已将 JS 代码嵌入到 {} 标记中,我不确定为什么会失败
解决方案
用 CONTENT_LINKS_PRESENTABLE.map(/* ... */) 替换 for ,这样它将返回节点数组。不过不要忘记钥匙!
{
CONTENT_LINKS_PRESENTABLE.map(content => (
<div className="navbar-item" key={content}>
<Link to={CONTENT_LINKS_SLUG[content]} className="navbar-link">
{CONTENT_LINKS_PRESENTABLE[content]}
</Link>
</div>
))
}
推荐阅读
- c - 在 Linux C 中计算目录中和目录下的文件数
- java - 错误:java.lang.ClassNotFoundException:org.apache.derby.jdbc.ClientDriver?
- javascript - 带有情感/mui 的 MUI v5 主题
- firebase - 如何在 Cloud Firestore 上按最近邻居查询?
- python-3.x - 从 Python 字典中获取值
- python - 函数转换列表设置的时间复杂度,反之亦然
- android - @Composable 调用只能在 @Composable 函数中显示的 @Composable 函数错误的上下文中发生
- javascript - asp.net core如何一一显示IEnumerable模型
- aop - Cytoscape - AOP Xplorer 交互
- r - R-for循环选择数据框中的两列,只有第二列改变