javascript - jsx return 语句中的条件
问题描述
React 很新,我相信这很容易,但我正在尝试转换它:
return values.map(value => {
if(head) return <th key={uuidv4()}> {value} </th>;
return <td key={uuidv4()}> {value} </td>
});
到单个返回语句中。
基本上是一个条件检查,<th>
用<td>
. 在香草中,我只返回一个模板字符串,但我似乎无法让它与 jsx 一起使用。(像这样的东西)<${head? 'th': 'td'} key=${uuidv4()}>${value}</${head? 'th': 'td'}>
我觉得我很接近了,但我显然返回了一个字符串 ::shrug::
任何帮助表示赞赏,
谢谢
解决方案
我会做
return values.map(value => {
return head ? <th key={uuidv4()}> {value} </th> :
<td key={uuidv4()}> {value} </td>
});
重要的是要说:在我看来,2 个选项(td 或 th)中代码的“重复”很棒!因为这是您拥有的两种不同类型的 UI 功能。最好将它们分开,并且可以单独对它们中的每一个进行更改。
推荐阅读
- java - 如何在休眠中找到外键的ID
- html - 是否可以从 css 延迟加载背景图像(没有 jQuery)?
- android - 使用 AppCompat 库时在 Android 中构建不可重现
- php - 我想知道为什么我的登录在 000Webhost 上有效,但在我尝试在我的系统上时无效
- thinkscript - thinkscript if 语句失败
- angular - Angular 8:当路由参数要改变时,断开与套接字的连接
- php - WooCommerce 价格 + ACF 编号字段错误汇总
- c# - 数据库中的数据不会显示在 DataGridView [VB.NET] 中
- angular - 已设置断点但尚未绑定
- uiwebview - Apple 警告 ITMS-90809:收到已弃用的 API 使用情况