From d9eb6b925cbbb303e3722d0a00b6749ec4280064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=89=E5=92=B2=E6=99=BA=E5=AD=90?= Date: Tue, 16 Aug 2022 17:55:33 +0800 Subject: [PATCH] perf(plugin-vue-jsx): hoist variables (#9687) --- packages/plugin-vue-jsx/src/index.ts | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/packages/plugin-vue-jsx/src/index.ts b/packages/plugin-vue-jsx/src/index.ts index 803c7fd7fd1a97..e5454980ed4d8e 100644 --- a/packages/plugin-vue-jsx/src/index.ts +++ b/packages/plugin-vue-jsx/src/index.ts @@ -38,6 +38,9 @@ function vueJsxPlugin(options: Options = {}): Plugin { let needHmr = false let needSourceMap = true + const { include, exclude, babelPlugins = [], ...babelPluginOptions } = options + const filter = createFilter(include || /\.[jt]sx$/, exclude) + return { name: 'vite:vue-jsx', @@ -75,14 +78,6 @@ function vueJsxPlugin(options: Options = {}): Plugin { async transform(code, id, opt) { const ssr = opt?.ssr === true - const { - include, - exclude, - babelPlugins = [], - ...babelPluginOptions - } = options - - const filter = createFilter(include || /\.[jt]sx$/, exclude) const [filepath] = id.split('?') // use id for script blocks in Vue SFCs (e.g. `App.vue?vue&type=script&lang.jsx`)