我们再写ts代码的时候经常会遇到这样的问题,说不存在这个类型我们该如何解决呢?
1.在定义接口的时候使用[索引签名]的形式
interface Person {
name: string
age?: number
[propName: string]: any
}
这样就可以拥有一个包含所有string类型的接口
2.使用extends属性
interface Size {
size: number
}
function track <T extends Size>(arg: T) : T {
return arg
}
3.使用ts内置的方法,Record
const user1: Record<string, string> = {
name: 'xjc'
}
看一下使用索引签名这里应该怎么写
const user2: { [key: string]: string } = {
name: 'xjc'
}