reactjs - 反应组件道具中的传播运算符
问题描述
有人可以告诉我,它是如何传播 3 点的吗?我知道它想将 isActive(Boolean) 传递给组件 SideNavLink。如果它是真的那么它有那些道具。但是,我想知道代码的作用。
- {} 一个括号
- 括号后的 3 个点(展开)
- () 3 点展开后
我希望我有一个伟大而清晰的描述我想知道的。
<NavLink href={href}>
{(isActive) => (
<SideNavLink
{...(isActive && { // this spread operator
bg: "teal.200",
rounded: "sm",
})}
{...props}
/>
)}
</NavLink>
解决方案
... 传播下一个可传播项目。在您的情况下,如果您将 isActive 评估为 true,您会发现,
...{bg: "teal.200", rounded: "sm",}
所以扩展运算符传播这个{bg: "teal.200", rounded: "sm",}
对象并返回bg: "teal.200", rounded: "sm"
,以便它们可以作为道具传递。
推荐阅读
- kibana - 异常检测 - 如何用作监控工具
- sql - 如何使用 dolphindb 数据库动态更新内存表
- javascript - Liferay - 页面配置
- docker - 将 Fluentd-config 文件复制到 kubernetes pod
- java - 如何在 Spring Cloud Kafka Streams 中以函数样式执行此拓扑?
- python - 如何为列表中的重复值获取相同的值
- javascript - 如何为 ngFor 循环添加条件
- go - Golang 从 Kafka 的一个主题中删除所有记录
- dynamic - 有什么方法可以让网格迭代从 api 填充到它的数据以做出反应?
- c++ - 对临时对象进行哪些操作可以防止其寿命延长?