fix(reactivity): make toRaw work on proxies created by proxyRef

This commit is contained in:
Evan You 2024-09-05 17:23:31 +08:00
parent 3116553529
commit 46c3ab1d71
No known key found for this signature in database
GPG Key ID: 00E9AB7A6704CE0A
1 changed files with 4 additions and 1 deletions

View File

@ -243,7 +243,10 @@ export function toValue<T>(source: MaybeRefOrGetter<T>): T {
}
const shallowUnwrapHandlers: ProxyHandler<any> = {
get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),
get: (target, key, receiver) =>
key === ReactiveFlags.RAW
? target
: unref(Reflect.get(target, key, receiver)),
set: (target, key, value, receiver) => {
const oldValue = target[key]
if (isRef(oldValue) && !isRef(value)) {