标签: typescript
鉴于以下课程:
class MyOb { foo: string; setFields(props) { Object.assign(this, props); } }
是否可以将props的{{1}}参数限制为setFields的属性?那样:
props
setFields
MyObj
答案 0 :(得分:3)
您正在寻找keyof和映射类型:
keyof
setFields(props: { [TKey in keyof MyOb]?: MyOb[TKey] } ) {
请注意?,因为您希望每个属性都是可选的。
?
Demo
Docs