types(reactivity): handle primitive + object intersection types in UnwrapRef (#614)

This commit is contained in:
IU
2020-01-17 06:47:47 +08:00
committed by Evan You
parent 2f6ec45d10
commit 2b4d0d6501
2 changed files with 12 additions and 1 deletions

View File

@@ -12,6 +12,8 @@ describe('with object props', () => {
ddd: string[]
}
type GT = string & { __brand: unknown }
const MyComponent = defineComponent({
props: {
a: Number,
@@ -57,6 +59,9 @@ describe('with object props', () => {
c: ref(1),
d: {
e: ref('hi')
},
f: {
g: ref('hello' as GT)
}
}
},
@@ -88,6 +93,7 @@ describe('with object props', () => {
// assert setup context unwrapping
expectType<number>(this.c)
expectType<string>(this.d.e)
expectType<GT>(this.f.g)
// setup context properties should be mutable
this.c = 2