接受一個對象(反應式或普通)或 ref 並將隻讀代理返回到原始代理。
類型
function readonly<T extends object>(
target: T
): DeepReadonly<UnwrapNestedRefs<T>>
細節
隻讀代理很深:訪問的任何嵌套屬性也將是隻讀的。它還具有與 reactive()
相同的 ref-unwrapping 行為,除了展開的值也將設為隻讀。
為避免深度轉換,請改用shallowReadonly()。
示例
const original = reactive({ count: 0 })
const copy = readonly(original)
watchEffect(() => {
// works for reactivity tracking
console.log(copy.count)
})
// mutating original will trigger watchers relying on the copy
original.count++
// mutating the copy will fail and result in a warning
copy.count++ // warning!
相關用法
- Vue.js reactive()用法及代碼示例
- Vue.js ref()用法及代碼示例
- Vue.js renderToSimpleStream()用法及代碼示例
- Vue.js renderToNodeStream()用法及代碼示例
- Vue.js renderToString()用法及代碼示例
- Vue.js resolveComponent()用法及代碼示例
- Vue.js renderToWebStream()用法及代碼示例
- Vue.js useSSRContext()用法及代碼示例
- Vue.js app.directive()用法及代碼示例
- Vue.js mergeProps()用法及代碼示例
- Vue.js app.config.warnHandler用法及代碼示例
- Vue.js pipeToWebWritable()用法及代碼示例
- Vue.js app.use()用法及代碼示例
- Vue.js v-pre用法及代碼示例
- Vue.js h()用法及代碼示例
- Vue.js serverPrefetch用法及代碼示例
- Vue.js customRef()用法及代碼示例
- Vue.js <Transition>用法及代碼示例
- Vue.js inject()用法及代碼示例
- Vue.js mixins用法及代碼示例
- Vue.js ComponentCustomProps用法及代碼示例
- Vue.js ComponentCustomProperties用法及代碼示例
- Vue.js app.mount()用法及代碼示例
- Vue.js <component>用法及代碼示例
- Vue.js createRenderer()用法及代碼示例
注:本文由純淨天空篩選整理自vuejs.org大神的英文原創作品 readonly()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。