Răsfoiți Sursa

fix: Revert "fix(types/ref): correct type inference for nested refs (#11536)"

This reverts commit 536f62332c455ba82ef2979ba634b831f91928ba.
Evan You 1 an în urmă
părinte
comite
3a56315f94
2 a modificat fișierele cu 1 adăugiri și 8 ștergeri
  1. 0 5
      packages/dts-test/ref.test-d.ts
  2. 1 3
      packages/reactivity/src/ref.ts

+ 0 - 5
packages/dts-test/ref.test-d.ts

@@ -180,11 +180,6 @@ describe('allow getter and setter types to be unrelated', <T>() => {
   const d = {} as T
   const e = ref(d)
   e.value = d
-
-  const f = ref(ref(0))
-  expectType<number>(f.value)
-  // @ts-expect-error
-  f.value = ref(1)
 })
 
 // shallowRef

+ 1 - 3
packages/reactivity/src/ref.ts

@@ -109,9 +109,7 @@ export function isRef(r: any): r is Ref {
  * @param value - The object to wrap in the ref.
  * @see {@link https://vuejs.org/api/reactivity-core.html#ref}
  */
-export function ref<T>(
-  value: T,
-): [T] extends [Ref] ? IfAny<T, Ref<T>, T> : Ref<UnwrapRef<T>, UnwrapRef<T> | T>
+export function ref<T>(value: T): Ref<UnwrapRef<T>, UnwrapRef<T> | T>
 export function ref<T = any>(): Ref<T | undefined>
 export function ref(value?: unknown) {
   return createRef(value, false)