首页 > 解决方案 > 打字稿空安全解构

问题描述

我输入了 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;
}

还是有更好的方法来进行内联解构或安全解构函数?

标签: typescript

解决方案


推荐阅读