diff --git a/packages/runtime-core/src/renderer.ts b/packages/runtime-core/src/renderer.ts index 8f67ce6b..3416cccd 100644 --- a/packages/runtime-core/src/renderer.ts +++ b/packages/runtime-core/src/renderer.ts @@ -804,6 +804,14 @@ export function createRenderer< } } if (n2.ref !== null && parentComponent !== null) { + if (__DEV__ && !(n2.shapeFlag & ShapeFlags.STATEFUL_COMPONENT)) { + pushWarningContext(n2) + warn( + `Functional components do not support "ref" because they do not ` + + `have instances.` + ) + popWarningContext() + } setRef(n2.ref, n1 && n1.ref, parentComponent, n2.component!.renderProxy) } }