Procházet zdrojové kódy

fix(sfc): only enable jsx parser plugin when explicitly using tsx

fix #4106
Evan You před 5 roky
rodič
revize
5df7dfcd71
1 změnil soubory, kde provedl 4 přidání a 1 odebrání
  1. 4 1
      packages/compiler-sfc/src/compileScript.ts

+ 4 - 1
packages/compiler-sfc/src/compileScript.ts

@@ -166,7 +166,10 @@ export function compileScript(
     scriptLang === 'tsx' ||
     scriptSetupLang === 'ts' ||
     scriptSetupLang === 'tsx'
-  const plugins: ParserPlugin[] = [...babelParserDefaultPlugins, 'jsx']
+  const plugins: ParserPlugin[] = [...babelParserDefaultPlugins]
+  if (!isTS || scriptLang === 'tsx' || scriptSetupLang === 'tsx') {
+    plugins.push('jsx')
+  }
   if (options.babelParserPlugins) plugins.push(...options.babelParserPlugins)
   if (isTS) plugins.push('typescript', 'decorators-legacy')