From: Evan You Date: Wed, 1 Sep 2021 16:40:36 +0000 (-0400) Subject: fix(compiler-sfc): ensure script setup lang=ts output is tree-shakable X-Git-Tag: v3.2.7~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b89ff9291e70c64f7098cc110161a75eb7c465a4;p=thirdparty%2Fvuejs%2Fcore.git fix(compiler-sfc): ensure script setup lang=ts output is tree-shakable --- diff --git a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap index 6d3e9e7bdb..8e2a50971b 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap @@ -49,7 +49,7 @@ return { x } name: \\"test\\" } -export default _defineComponent({ +export default /*#__PURE__*/_defineComponent({ ...__default__, setup})" `; @@ -193,7 +193,7 @@ exports[`SFC compile `) assertCode(content) - expect(content).toMatch(`export default _defineComponent({ + expect(content).toMatch(`export default /*#__PURE__*/_defineComponent({ props: { foo: String }, emits: ['a', 'b'], setup(__props, { expose, emit }) {`) diff --git a/packages/compiler-sfc/src/compileScript.ts b/packages/compiler-sfc/src/compileScript.ts index 4ff9baee56..648cd019a5 100644 --- a/packages/compiler-sfc/src/compileScript.ts +++ b/packages/compiler-sfc/src/compileScript.ts @@ -1148,14 +1148,14 @@ export function compileScript( `\n${hasAwait ? `async ` : ``}function setup(${args}) {\n` ) s.append( - `\nexport default ${helper( + `\nexport default /*#__PURE__*/${helper( `defineComponent` )}({${def}${runtimeOptions}\n setup})` ) } else { s.prependLeft( startOffset, - `\nexport default ${helper( + `\nexport default /*#__PURE__*/${helper( `defineComponent` )}({${def}${runtimeOptions}\n ${ hasAwait ? `async ` : ``