Readonly 将类型变为只读。
首先声明一个 MyReadonly 类型。
type MyReadonly = any;
该类型接受一个泛型参数
type MyReadonly<T> = any;
用 keyof 来获取 T 的属性组成的联合类型,再用 in 来遍历这个联合类型
type MyReadonly<T> = {
[Key in keyof T]: T[Key];
};
添加 readonly 标识
type MyReadonly<T> = {
readonly [Key in keyof T]: T[Key];
};