从JSON对象中选择值,其中Typescript类型的键

时间:2020-11-06 18:50:59

标签: javascript typescript typescript-generics

我有以下类型:

interface User {
  email: string;
  name: string;
}

...以及以下反应成分:

const MyComponent = <Values extends object>({ values }: { values: Values }) => {
  console.log(values);
  return <div></div>
}

假设我将MyComponentUser界面一起使用,因此我可以将values传递给它。问题是:如何修改传递的values JSON对象,以提取其中普通类型Values存在的所有属性?换句话说,如果我传递对象:

{
  email: 'mail@example.org',
  name: 'Some name',
  foo: 'bar'
}

我需要组件中的console.log(values)来记录其中没有foo: 'bar'的对象。

1 个答案:

答案 0 :(得分:1)

类型在运行时不存在Typescript 编译为javascript。