Skip to content

Commit 8fe554c

Browse files
committed
perf: enable vue-loader template compilation caching
1 parent e5101b4 commit 8fe554c

File tree

3 files changed

+14
-22
lines changed

3 files changed

+14
-22
lines changed

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

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ module.exports = (api, options) => {
33
const resolveLocal = require('../util/resolveLocal')
44
const getAssetPath = require('../util/getAssetPath')
55
const inlineLimit = 10000
6-
const useThreads = process.env.NODE_ENV === 'production' && options.parallel
76

87
webpackConfig
98
.context(api.service.context)
@@ -44,29 +43,22 @@ module.exports = (api, options) => {
4443
// vue-loader --------------------------------------------------------------
4544

4645
const { genCacheConfig } = require('@vue/cli-shared-utils')
46+
const vueLoaderCacheConfig = genCacheConfig(api, options, 'vue-loader')
4747

48-
const vueRule = webpackConfig.module
48+
webpackConfig.module
4949
.rule('vue')
5050
.test(/\.vue$/)
5151
.use('cache-loader')
5252
.loader('cache-loader')
53-
.options(genCacheConfig(api, options, 'vue-loader'))
53+
.options(vueLoaderCacheConfig)
5454
.end()
55-
56-
if (useThreads) {
57-
vueRule
58-
.use('thread-loader')
59-
.loader('thread-loader')
60-
}
61-
62-
vueRule
63-
.use('vue-loader')
64-
.loader('vue-loader')
65-
.options({
66-
compilerOptions: {
67-
preserveWhitespace: false
68-
}
69-
})
55+
.use('vue-loader')
56+
.loader('vue-loader')
57+
.options(Object.assign({
58+
compilerOptions: {
59+
preserveWhitespace: false
60+
}
61+
}, vueLoaderCacheConfig))
7062

7163
webpackConfig
7264
.plugin('vue-loader')

packages/@vue/cli-service/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
"thread-loader": "^1.1.5",
5757
"uglifyjs-webpack-plugin": "^1.2.5",
5858
"url-loader": "^1.0.1",
59-
"vue-loader": "^15.1.0",
59+
"vue-loader": "^15.2.0",
6060
"vue-template-compiler": "^2.5.16",
6161
"webpack": "^4.8.2",
6262
"webpack-chain": "^4.8.0",

yarn.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10669,9 +10669,9 @@ vue-jest@^2.6.0:
1066910669
tsconfig "^7.0.0"
1067010670
vue-template-es2015-compiler "^1.6.0"
1067110671

10672-
vue-loader@^15.1.0:
10673-
version "15.1.0"
10674-
resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.1.0.tgz#82a2a5c310951aba17ad5d8680fe016c77d37e80"
10672+
vue-loader@^15.2.0:
10673+
version "15.2.0"
10674+
resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.2.0.tgz#5a8138e490a1040942d2f10ae68fa72b5a923364"
1067510675
dependencies:
1067610676
"@vue/component-compiler-utils" "^1.2.1"
1067710677
hash-sum "^1.0.2"

0 commit comments

Comments
 (0)