javascript - 在 React 中从 ...this.props 中删除 prop
问题描述
我正在寻找的是一种在传递...this.props
给另一个 React 组件之前删除道具的快速方法。目前我有一个高阶组件,它执行一些逻辑,然后将其所有道具传递给另一个组件,但下一个组件不需要其中一个道具。是否可以在仍在使用时移除该道具,...this.props
或者我必须单独发送每个道具?
解决方案
您应该能够使用带有解构的 rest 运算符来获得所需的结果,如下所示:
const props = {
a: 1,
b: 2,
c: 3
}
// We want newProps without b
const { b, ...newProps } = props;
console.log(newProps);
或者,您可以复制对象并从新对象中删除不需要的道具。
const props = {
a: 1,
b: 2,
c: 3
}
const newProps = { ...props };
delete newProps.b;
console.log(newProps);
此时,您可以将您的传播newProps
到返回的组件中:
<MyComponent {...newProps} />
推荐阅读
- regex - 正则表达式替换 Wordpress 中的垃圾邮件链接
- azure - 如何以编程方式获取 Azure API 管理的访问令牌?
- c# - 为什么 Path.GetFullPath 返回带有额外“bin/Debug/netcoreapp3.0”的地址?
- html - 解决 z-index 需要同时位于 div 之上和之下的问题
- geolocation - 在 NativeScript 应用程序中获取额外的地理位置数据 (GnssStatus)
- html - 如何将子文本元素与输入文本元素的底部对齐
- javascript - 将元素添加到已评估的循环中
- javascript - Javascript 正则表达式延迟量词未按预期工作
- c# - 转动时倾斜第一人称相机的 z 轴
- bash - 替换多个文件中特定行上的非字母数字字符