readonly()
readonly()
是一个用于创建只读代理对象的函数。它接受一个对象 (不论是响应式还是普通的) 或是一个 ref,返回一个原值的只读代理。
类型
function readonly<T extends object>(
target: T
): DeepReadonly<UnwrapNestedRefs<T>>
以下是对这个函数签名的详细解释:
- 参数
target: T
:target
是要被转换为只读对象的输入对象。T extends object
表示类型参数T
必须是一个对象类型,这确保了输入的target
只能是对象而不是基本数据类型(如数字、字符串等)。
- 返回值
DeepReadonly<UnwrapNestedRefs<T>>
:这个函数返回一个深度只读的、解包了嵌套响应式对象的新对象。DeepReadonly
是一个工具类型,它使传入的类型变为深度只读类型,即对象的所有嵌套属性也都是只读的。UnwrapNestedRefs
是一个工具类型,它用于解包嵌套的响应式对象(由ref
或reactive
创建的对象),将嵌套的响应式对象转换为普通的 JavaScript 对象。