Skip to content

Commit a648958

Browse files
committed
fix: compatibility with Vue 2.7
1 parent 98c66c9 commit a648958

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

packages/@vue/cli-plugin-typescript/index.js

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,14 +82,23 @@ module.exports = (api, projectOptions) => {
8282
// this plugin does not play well with jest + cypress setup (tsPluginE2e.spec.js) somehow
8383
// so temporarily disabled for vue-cli tests
8484
if (!process.env.VUE_CLI_TEST) {
85+
let vueCompilerPath
86+
try {
87+
// Vue 2.7+
88+
vueCompilerPath = require.resolve('vue/compiler-sfc')
89+
} catch (e) {
90+
// Vue 2.6 and lower versions
91+
vueCompilerPath = require.resolve('vue-template-compiler')
92+
}
93+
8594
config
8695
.plugin('fork-ts-checker')
8796
.use(require('fork-ts-checker-webpack-plugin'), [{
8897
typescript: {
8998
extensions: {
9099
vue: {
91100
enabled: true,
92-
compiler: isVue3 ? require.resolve('vue/compiler-sfc') : require.resolve('vue-template-compiler')
101+
compiler: vueCompilerPath
93102
}
94103
},
95104
diagnosticOptions: {

packages/@vue/cli-service/lib/config/base.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,14 @@ module.exports = (api, options) => {
6464
const vueLoaderCacheConfig = api.genCacheConfig('vue-loader', {
6565
'vue-loader': require('@vue/vue-loader-v15/package.json').version,
6666
'@vue/component-compiler-utils': require('@vue/component-compiler-utils/package.json').version,
67-
'vue-template-compiler': require('vue-template-compiler/package.json').version
6867
})
6968

69+
try {
70+
vueLoaderCacheConfig['vue-template-compiler'] = require('vue-template-compiler/package.json').version
71+
} catch (e) {
72+
// For Vue 2.7 projects, `vue-template-compiler` is not required
73+
}
74+
7075
webpackConfig.resolve
7176
.alias
7277
.set(

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy