【发布时间】:2018-10-26 03:01:34
【问题描述】:
在打字稿中, 我有一个功能:-
function updateSetting(settingName, settingValue: string[]| number | null) {
this.props.updateSetting({[settingName]}: settingValue)
}
我也有一个对象,所以我有一个接口
interface Setting {
names: string[]
city: string | null
age: number
}
所以,我想使用对象作为参数,并且我还希望将对象的一个属性作为参数传递,该参数在运行时决定。所以在我的函数 settingName 可以是“名称”或“城市”或“年龄”,所以我想从界面本身分配类型。
我不想写(settingValue: string[]| number | null)我想写类似的东西
settingValue: valueof Setting
因为设置值可以是names, city, age的任何类型。
我怎样才能在打字稿中实现这一点?
【问题讨论】:
-
看看
keyof:typescriptlang.org/docs/handbook/release-notes/…。看起来它可以适合您的用例
标签: typescript