MCPcopy Create free account
hub / github.com/cn-docs/vueuse / extendRef

Function extendRef

packages/shared/extendRef/index.ts:30–51  ·  view source on GitHub ↗
(ref: R, extend: Extend, { enumerable = false, unwrap = true }: ExtendRefOptions = {})

Source from the content-addressed store, hash-verified

28
29// 实现
30export function extendRef<R extends Ref<any>, Extend extends object>(ref: R, extend: Extend, { enumerable = false, unwrap = true }: ExtendRefOptions = {}) {
31 for (const [key, value] of Object.entries(extend)) {
32 if (key === 'value')
33 continue
34
35 if (isRef(value) && unwrap) {
36 Object.defineProperty(ref, key, {
37 get() {
38 return value.value
39 },
40 set(v) {
41 value.value = v
42 },
43 enumerable,
44 })
45 }
46 else {
47 Object.defineProperty(ref, key, { value, enumerable })
48 }
49 }
50 return ref
51}

Callers 1

refWithControlFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected