diff --git a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap index 785ca1d4..a9a6f236 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap @@ -33,20 +33,6 @@ return { x } export const n = 1" `; -exports[`SFC compile - `) - assertCode(content) - expect(bindings).toStrictEqual({ - myEmit: BindingTypes.SETUP_CONST - }) - // should remove defineOptions import and call - expect(content).not.toMatch(/defineEmits?/) - // should generate correct setup signature - expect(content).toMatch(`setup(__props, { expose, emit: myEmit }) {`) - // should include context options in default export - expect(content).toMatch(`export default { - emits: ['foo', 'bar'],`) - }) - test('defineEmits()', () => { const { content, bindings } = compile(` `, { refSugar: true } @@ -848,7 +829,7 @@ const emit = defineEmits(['a', 'b']) test('ref', () => { assertAwaitDetection( - `ref: a = 1 + (await foo)`, + `let a = $ref(1 + (await foo))`, `1 + ((([__temp,__restore]=_withAsyncContext(()=>(foo))),__temp=await __temp,__restore(),__temp))` ) }) diff --git a/packages/compiler-sfc/src/compileScript.ts b/packages/compiler-sfc/src/compileScript.ts index 7da9334e..05b8c8a5 100644 --- a/packages/compiler-sfc/src/compileScript.ts +++ b/packages/compiler-sfc/src/compileScript.ts @@ -48,7 +48,7 @@ import { rewriteDefault } from './rewriteDefault' // Special compiler macros const DEFINE_PROPS = 'defineProps' -const DEFINE_EMIT = 'defineEmit' +const DEFINE_EMITS = 'defineEmits' const DEFINE_EXPOSE = 'defineExpose' const WITH_DEFAULTS = 'withDefaults' @@ -57,9 +57,6 @@ const $COMPUTED = `$computed` const $FROM_REFS = `$fromRefs` const $RAW = `$raw` -// deprecated -const DEFINE_EMITS = 'defineEmits' - export interface SFCScriptCompileOptions { /** * Scope ID for prefixing injected CSS varialbes. @@ -387,7 +384,7 @@ export function compileScript( } function processDefineEmits(node: Node): boolean { - if (!isCallOf(node, c => c === DEFINE_EMIT || c === DEFINE_EMITS)) { + if (!isCallOf(node, DEFINE_EMITS)) { return false } if (hasDefineEmitCall) { @@ -398,7 +395,7 @@ export function compileScript( if (node.typeParameters) { if (emitsRuntimeDecl) { error( - `${DEFINE_EMIT}() cannot accept both type and non-type arguments ` + + `${DEFINE_EMITS}() cannot accept both type and non-type arguments ` + `at the same time. Use one or the other.`, node ) @@ -873,7 +870,6 @@ export function compileScript( if ( source === 'vue' && (imported === DEFINE_PROPS || - imported === DEFINE_EMIT || imported === DEFINE_EMITS || imported === DEFINE_EXPOSE) ) { @@ -1414,11 +1410,7 @@ function walkDeclaration( isConst && isCallOf( init, - c => - c === DEFINE_PROPS || - c === DEFINE_EMIT || - c === DEFINE_EMITS || - c === WITH_DEFAULTS + c => c === DEFINE_PROPS || c === DEFINE_EMITS || c === WITH_DEFAULTS ) ) if (id.type === 'Identifier') {