背景
在项目中经常使用到const
type
这两个声明,有时候需要把他们的值进行转换,比如把const
的键或者值转成type
的值
具体实现
// 这里需要先声明一个辅助函数比如叫`ValueOf`,类似于`keyof`功能的这种,然后就可以在实际中进行转换了
type ValueOf<T> = T[keyof T];
// 举个例子,有这样的一个对象,我想定义一个type为`new` `removed`的值
cosnt LineType = {
new: 'new',
removed: 'removed'
} as const
// 使用上面定义的ValueOf函数
type LineType = ValueOf<typeof LineState>;