问题 #
实现一个通用的 Mutable<T> 类型,其中 T 可以是任意类型(不是只读)。
interface Todo {
readonly title: string
readonly description: string
readonly completed: boolean
}
type MutableTodo = Mutable<Todo> // { title: string; description: string; completed: boolean; }解答 #
type Mutable<T> = { -readonly [K in keyof T]: T[K] }拆分 #
- 可以通过
+/-移除添加修饰符 - 可以通过
-readonly移除readonly