我可以在渲染之前计算JSX中的元素吗?
Can I count elements in JSX before rendering?
我有一个类,其中有一个表。问题是,其中的列数可能会变化。当没有数据加载到表中时,我需要在这里显示一条消息,例如"没有数据",使用<td colSpan="#"></td>
。我需要确定表中colSpan
的列数,换句话说,我想计算表头中th
元素的数量。在render
方法中可能吗?或者可能有更好的方法?
我想我可以渲染表没有"无数据"的消息,然后使用jQuery在componentDidUpdate
插入它,但有些东西告诉我这是一个坏主意…
你可以使用React Children实用程序来确定里面是否有任何元素(考虑到你有一个父Table
元素,它将包装TableRow
或TableHeader
元素)。我认为这是最合适的方法。
这样你就可以动态地呈现内容,还可以告诉你需要呈现多少元素。
您可能更准确地寻找的是React.Children.count。
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 如何设置html元素填充的动画
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- React.js错误;相邻的JSX元素必须被封装在一个封闭标记“中;
- 从 JSX 元素中提取数据
- ReactJS 开关大小写错误 相邻的 JSX 元素必须包装在封闭标记中
- React JSX 中的自定义 HTML 元素标记
- 如何使用字符串串联在JSX中创建DOM元素
- 如何使用JSX和Lodash将一个元素重复n次
- 如何将JSX元素连接到数组中
- React不触发绑定到数组映射中创建的JSX元素的事件
- 根据条件渲染JSX元素
- JSX如何为带有复选框输入的元素插入道具?
- 解析错误:相邻的JSX元素必须用封闭标记包装
- 我可以使用svg标记元素(g)作为React JSX返回值的根元素吗
- 将字符串替换为JSX元素
- 我可以在渲染之前计算JSX中的元素吗?
- 如何拥有条件元素并使用Facebook React的JSX保持DRY
- 如何从.jsx脚本中调用ReactJS元素上的jQuery函数?