javascript - 在 JSX 标签内的 map 中反应 if 语句
问题描述
我具有以下功能来构建选项卡式项目:
function ConstructTabs(props) {
const tabs = props.tabs;
const makeTabs = tabs.map((tab, index) => {
<React.Fragment>
<input
className="input-tabs"
id={"tab" + index}
type="radio"
name="tabs"
{index === 0 ? checked : ""}
/>
<label for={"tab" + index}>{tab}</label>
</React.Fragment>
});
return (
<React.Fragment>
{makeTabs}
</React.Fragment>
);
}
我只想在索引为 0 时插入选中的属性,我的问题是条件"{index === 0 ? checked : ""}"。这是我得到的错误:
Parsing error: Unexpected token, expected "..."
275 | type="radio"
276 | name="tabs"
> 277 | {index === 0 ? checked : ""}
| ^
278 | />
279 | <label for={"tab" + index}>{tab}</label>
280 | </React.Fragment>
有没有办法解决它或有更好的选择?
解决方案
在没有处理程序的情况下对表单字段使用checked
道具onChange
将呈现只读字段。如果该字段应该是可变的,请使用defaultChecked
.
所以你可以这样做:
defaultChecked={index===0}
推荐阅读
- c# - SQL 到 Linq C# EntityFrameWork 查询
- sql - 当 [UserSelect] 列的任何行值为 1 时如何选择 Algokey,否则切换到 [SytemSelect] 列的行值为 1
- ios - IOS(EXPO)的反应本机应用程序中Webview中的更改权限请求警报
- javascript - 导航栏菜单在小屏幕上不垂直对齐和汉堡菜单的位置
- javascript - 如何在不删除自动完成中的选择的情况下禁用 Material-UI 中的下划线?
- python - 如何从包含重复数字的列表中删除数字?
- networking - 谁能帮我找到在 NS_3 的 Tcp Congestion ops 算法中存储的 dupack 的位置?
- javascript - 如何在Javascript中使用异步函数处理响应承诺
- arrays - 最大和最小数...在 32 位 arm 汇编语言中
- c++ - 制作:没有规则来制作“../build/libgameengine.a”需要的目标“obj/AudioHandler.o”。停止