fix: allow v3 cli to invoke vuex & router plugin from inside cli-service (#4696)

This commit is contained in:
Haoqun Jiang
2019-10-17 15:36:53 +08:00
committed by GitHub
parent eec84c0d49
commit a759af1c2a
4 changed files with 12 additions and 31 deletions

View File

@@ -1,5 +1,3 @@
const { execa } = require('@vue/cli-shared-utils')
module.exports = (api, options) => {
api.render('./template', {
doesCompile: api.hasPlugin('babel') || api.hasPlugin('typescript')
@@ -58,39 +56,12 @@ module.exports = (api, options) => {
// for v3 compatibility
if (options.router && !api.hasPlugin('router')) {
api.extendPackage({
devDependencies: {
'@vue/cli-plugin-router': '^4.0.0'
}
})
api.onCreateComplete(() => {
execa.sync('vue', [
'invoke',
'@vue/cli-plugin-router',
`--historyMode=${options.routerHistoryMode ? 'true' : ''}`
], {
cwd: api.resolve('.')
})
})
require('./router')(api, options)
}
// for v3 compatibility
if (options.vuex && !api.hasPlugin('vuex')) {
api.extendPackage({
devDependencies: {
'@vue/cli-plugin-vuex': '^4.0.0'
}
})
api.onCreateComplete(() => {
execa.sync('vue', [
'invoke',
'@vue/cli-plugin-vuex'
], {
cwd: api.resolve('.')
})
})
require('./vuex')(api)
}
// additional tooling configurations

View File

@@ -0,0 +1,5 @@
module.exports = (api, options) => {
require('@vue/cli-plugin-vuex/generator')(api, {
historyMode: options.routerHistoryMode
})
}

View File

@@ -0,0 +1,3 @@
module.exports = api => {
require('@vue/cli-plugin-vuex/generator')(api)
}

View File

@@ -26,6 +26,8 @@
"@intervolga/optimize-cssnano-plugin": "^1.0.5",
"@soda/friendly-errors-webpack-plugin": "^1.7.1",
"@vue/cli-overlay": "^4.0.2",
"@vue/cli-plugin-router": "^4.0.2",
"@vue/cli-plugin-vuex": "^4.0.2",
"@vue/cli-shared-utils": "^4.0.2",
"@vue/component-compiler-utils": "^3.0.0",
"@vue/preload-webpack-plugin": "^1.1.0",