diff --git a/packages/runtime-core/__tests__/createComponent.spec.tsx b/packages/runtime-core/__tests__/createComponent.spec.tsx index 7c81aadf..9e7420ae 100644 --- a/packages/runtime-core/__tests__/createComponent.spec.tsx +++ b/packages/runtime-core/__tests__/createComponent.spec.tsx @@ -1,5 +1,5 @@ import { createComponent } from '../src/component' -import { value } from '@vue/reactivity' +import { ref } from '@vue/reactivity' import { PropType } from '../src/componentProps' // mock React just for TSX testing purposes @@ -35,9 +35,9 @@ test('createComponent type inference', () => { props.cc && props.cc.push('hoo') props.dd.push('dd') return { - c: value(1), + c: ref(1), d: { - e: value('hi') + e: ref('hi') } } }, diff --git a/packages/runtime-core/src/component.ts b/packages/runtime-core/src/component.ts index 7268d83d..b4008d7e 100644 --- a/packages/runtime-core/src/component.ts +++ b/packages/runtime-core/src/component.ts @@ -125,8 +125,8 @@ export type ComponentInstance

= { // overload 1: direct setup function // (uses user defined props interface) export function createComponent( - setup: (props: Props, ctx: SetupContext) => (() => unknown) -): (props: Props) => unknown + setup: (props: Props, ctx: SetupContext) => object | (() => VNodeChild) +): (props: Props) => any // overload 2: object format with no props // (uses user defined props interface) // return type is for Vetur and TSX support