diff --git a/packages/reactivity-transform/__tests__/__snapshots__/reactivityTransform.spec.ts.snap b/packages/reactivity-transform/__tests__/__snapshots__/reactivityTransform.spec.ts.snap index b120724ff6a..793ee307632 100644 --- a/packages/reactivity-transform/__tests__/__snapshots__/reactivityTransform.spec.ts.snap +++ b/packages/reactivity-transform/__tests__/__snapshots__/reactivityTransform.spec.ts.snap @@ -4,7 +4,7 @@ exports[`$ unwrapping 1`] = ` " import { ref, shallowRef } from 'vue' let foo = (ref()) - let a = (ref(1)) + export let a = (ref(1)) let b = (shallowRef({ count: 0 })) diff --git a/packages/reactivity-transform/__tests__/reactivityTransform.spec.ts b/packages/reactivity-transform/__tests__/reactivityTransform.spec.ts index c3c90aae57e..916bd5a7d59 100644 --- a/packages/reactivity-transform/__tests__/reactivityTransform.spec.ts +++ b/packages/reactivity-transform/__tests__/reactivityTransform.spec.ts @@ -19,7 +19,7 @@ test('$ unwrapping', () => { const { code, rootRefs } = transform(` import { ref, shallowRef } from 'vue' let foo = $(ref()) - let a = $(ref(1)) + export let a = $(ref(1)) let b = $(shallowRef({ count: 0 })) @@ -30,7 +30,7 @@ test('$ unwrapping', () => { expect(code).not.toMatch(`$(ref(1))`) expect(code).not.toMatch(`$(shallowRef({`) expect(code).toMatch(`let foo = (ref())`) - expect(code).toMatch(`let a = (ref(1))`) + expect(code).toMatch(`export let a = (ref(1))`) expect(code).toMatch(` let b = (shallowRef({ count: 0 diff --git a/packages/reactivity-transform/src/reactivityTransform.ts b/packages/reactivity-transform/src/reactivityTransform.ts index 706b09ec5ad..be6ceb75693 100644 --- a/packages/reactivity-transform/src/reactivityTransform.ts +++ b/packages/reactivity-transform/src/reactivityTransform.ts @@ -229,6 +229,12 @@ export function transformAST( stmt.left.type === 'VariableDeclaration' ) { walkVariableDeclaration(stmt.left) + } else if ( + stmt.type === 'ExportNamedDeclaration' && + stmt.declaration && + stmt.declaration.type === 'VariableDeclaration' + ) { + walkVariableDeclaration(stmt.declaration, isRoot) } } } @@ -562,6 +568,7 @@ export function transformAST( return } + // skip type nodes if ( parent && parent.type.startsWith('TS') &&