Ver Fonte

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

fix #4106
Evan You há 4 anos atrás
pai
commit
5df7dfcd71
1 ficheiros alterados com 4 adições e 1 exclusões
  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')