Skip to content

Commit 91f581b

Browse files
committed
fix: fix template options resolving for ts
1 parent 1666885 commit 91f581b

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

src/resolveScript.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,7 @@ export function resolveScript(
6666
compiler: templateCompiler,
6767
compilerOptions: {
6868
...options.compilerOptions,
69-
...(options.enableTsInTemplate
70-
? resolveTemplateTSOptions(descriptor, options.compilerOptions)
71-
: null),
69+
...resolveTemplateTSOptions(descriptor, options),
7270
},
7371
transformAssetUrls: options.transformAssetUrls || true,
7472
},

src/templateLoader.ts

+1-3
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,7 @@ const TemplateLoader: webpack.loader.Loader = function (source, inMap) {
6363
...options.compilerOptions,
6464
scopeId: query.scoped ? `data-v-${scopeId}` : undefined,
6565
bindingMetadata: script ? script.bindings : undefined,
66-
...(options.enableTsInTemplate
67-
? resolveTemplateTSOptions(descriptor, options.compilerOptions)
68-
: null),
66+
...resolveTemplateTSOptions(descriptor, options),
6967
},
7068
transformAssetUrls: options.transformAssetUrls || true,
7169
})

src/util.ts

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
import { SFCDescriptor, CompilerOptions } from '@vue/compiler-sfc'
2+
import { VueLoaderOptions } from '.'
23

34
export function resolveTemplateTSOptions(
45
descriptor: SFCDescriptor,
5-
options: CompilerOptions | null | undefined
6-
): CompilerOptions {
6+
options: VueLoaderOptions
7+
): CompilerOptions | null {
8+
if (options.enableTsInTemplate === false) return null
9+
710
const lang = descriptor.script?.lang || descriptor.scriptSetup?.lang
811
const isTS = !!(lang && /tsx?$/.test(lang))
9-
let expressionPlugins = (options && options.expressionPlugins) || []
12+
let expressionPlugins = options?.compilerOptions?.expressionPlugins || []
1013
if (isTS && !expressionPlugins.includes('typescript')) {
1114
expressionPlugins = [...expressionPlugins, 'typescript']
1215
}

0 commit comments

Comments
 (0)