typescript - 打字稿空安全解构
问题描述
我输入了 graphql 查询,这些查询可以是深层对象,其中每个级别都可以为空,这使得我的解构代码看起来很糟糕......
const { levelOne } = data || {} as keyof typeof data;
conse { levelTwo } = levelOne || {} as keyof typeof levelOne;
...
我可以通过提供一个空安全解构函数来使这个更干净吗?
const safeDestructure = <T extends {}>(obj:T): T => {
return obj || {} as keyof typeof obj;
}
还是有更好的方法来进行内联解构或安全解构函数?
解决方案
推荐阅读
- powershell - 创建具有不同颜色的多条线的最佳方法
- apache-spark-sql - Spark Sql:从时间戳按小时间隔分区
- linux - 编写 AMD64 SysV 程序集时使用哪些寄存器作为临时寄存器?
- azure - 如何在 Azure 自动化 Runbook 中显示详细输出?
- javascript - 带recaptcha 的地理位置无法在Safari 笔记本电脑上运行(navigator.geolocation)
- typescript - 保存泛型类的任何实例的 TypeScript 变量
- azure - 为什么即使生存时间(Ttl)关闭,惰性索引模式也会删除我在 cosmos 中的数据?
- reactjs - 反应如何在循环中执行异步然后返回反应元素
- javascript - Javascript push() 函数未将对象添加到数组
- javascript - 在画布上添加多个球 onclick