From 3ceb8b9a59f9f47e57dc1dfc1edcd61a6604a7f8 Mon Sep 17 00:00:00 2001 From: congzc Date: Fri, 14 Apr 2023 14:01:43 +0800 Subject: [PATCH] 1 --- package-lock.json | 183 -------------------------------- package.json | 1 - src/api/chooseModel.js | 14 ++- src/components/editPosition.vue | 4 +- src/main.js | 5 +- src/views/model/chooseModel.vue | 47 ++++---- src/views/model/editModel.vue | 53 ++++----- src/views/myPage/myPage.vue | 43 -------- yarn.lock | 68 +----------- 9 files changed, 65 insertions(+), 353 deletions(-) diff --git a/package-lock.json b/package-lock.json index f0c171f..492f26f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,6 @@ "vant": "^2.12.48", "vue": "^2.6.11", "vue-cropper": "^0.5.11", - "vue-masonry": "^0.16.0", "vue-router": "^3.2.0", "vue-waterfall2": "^1.10.6", "vuex": "^3.4.0" @@ -4253,12 +4252,6 @@ "minimalistic-assert": "^1.0.0" } }, - "node_modules/desandro-matches-selector": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha512-+1q0nXhdzg1IpIJdMKalUwvvskeKnYyEe3shPRwedNcWtnhEKT3ZxvFjzywHDeGcKViIxTCAoOYQWP1qD7VNyg==", - "license": "MIT" - }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz", @@ -4867,12 +4860,6 @@ "node": ">= 0.6" } }, - "node_modules/ev-emitter": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/ev-emitter/-/ev-emitter-1.1.1.tgz", - "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==", - "license": "MIT" - }, "node_modules/event-pubsub": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/event-pubsub/-/event-pubsub-4.3.0.tgz", @@ -5339,15 +5326,6 @@ "node": ">=6" } }, - "node_modules/fizzy-ui-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmmirror.com/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", - "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", - "license": "MIT", - "dependencies": { - "desandro-matches-selector": "^2.0.0" - } - }, "node_modules/flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmmirror.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz", @@ -5616,12 +5594,6 @@ "dev": true, "license": "ISC" }, - "node_modules/get-size": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/get-size/-/get-size-2.0.3.tgz", - "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==", - "license": "MIT" - }, "node_modules/get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmmirror.com/get-stdin/-/get-stdin-4.0.1.tgz", @@ -6524,15 +6496,6 @@ "node": ">= 4" } }, - "node_modules/imagesloaded": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/imagesloaded/-/imagesloaded-4.1.4.tgz", - "integrity": "sha512-ltiBVcYpc/TYTF5nolkMNsnREHW+ICvfQ3Yla2Sgr71YFwQ86bDwV9hgpFhFtrGPuwEx5+LqOHIrdXBdoWwwsA==", - "license": "MIT", - "dependencies": { - "ev-emitter": "^1.0.0" - } - }, "node_modules/immutable": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.0.tgz", @@ -7714,16 +7677,6 @@ "node": ">=0.10.0" } }, - "node_modules/masonry-layout": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/masonry-layout/-/masonry-layout-4.2.2.tgz", - "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", - "license": "MIT", - "dependencies": { - "get-size": "^2.0.2", - "outlayer": "^2.1.0" - } - }, "node_modules/md5.js": { "version": "1.3.5", "resolved": "https://registry.npmmirror.com/md5.js/-/md5.js-1.3.5.tgz", @@ -8154,12 +8107,6 @@ "node": ">=4.0.0" } }, - "node_modules/mitt": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.0.tgz", - "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==", - "license": "MIT" - }, "node_modules/mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmmirror.com/mixin-deep/-/mixin-deep-1.3.2.tgz", @@ -12239,17 +12186,6 @@ "dev": true, "license": "MIT" }, - "node_modules/outlayer": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/outlayer/-/outlayer-2.1.1.tgz", - "integrity": "sha512-+GplXsCQ3VrbGujAeHEzP9SXsBmJxzn/YdDSQZL0xqBmAWBmortu2Y9Gwdp9J0bgDQ8/YNIPMoBM13nTwZfAhw==", - "license": "MIT", - "dependencies": { - "ev-emitter": "^1.0.0", - "fizzy-ui-utils": "^2.0.0", - "get-size": "^2.0.2" - } - }, "node_modules/p-finally": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/p-finally/-/p-finally-1.0.0.tgz", @@ -16957,32 +16893,6 @@ "resolved": "https://registry.npmmirror.com/vue-cropper/-/vue-cropper-0.5.11.tgz", "integrity": "sha512-UeA3qL2BLCTGkOEAxEsxSNFO+qLYAn6YRHv4oS32cP9lMhF1vFmnAf/z+ZamtR0/Fh3sbZeZUCLVR2Ol2/dpTQ==" }, - "node_modules/vue-demi": { - "version": "0.13.11", - "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", - "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", - "hasInstallScript": true, - "license": "MIT", - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, "node_modules/vue-hot-reload-api": { "version": "2.3.4", "resolved": "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", @@ -17095,27 +17005,6 @@ "node": ">=8.9.0" } }, - "node_modules/vue-masonry": { - "version": "0.16.0", - "resolved": "https://registry.npmmirror.com/vue-masonry/-/vue-masonry-0.16.0.tgz", - "integrity": "sha512-0Wi/BH4iYYRrAAFY/wokczz0lWWPg1vmOvFW4aC2nKybKf6kVqUvFfR9/+izDfzG657/vY+Om0gqOB5YPxPxuQ==", - "license": "MIT", - "dependencies": { - "imagesloaded": "4.1.4", - "masonry-layout": "^4.2.2", - "mitt": "^3.0.0", - "vue-demi": "^0.13.2" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^2.0.0 || >=3.0.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, "node_modules/vue-router": { "version": "3.6.5", "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-3.6.5.tgz", @@ -21285,11 +21174,6 @@ "minimalistic-assert": "^1.0.0" } }, - "desandro-matches-selector": { - "version": "2.0.2", - "resolved": "https://registry.npmmirror.com/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz", - "integrity": "sha512-+1q0nXhdzg1IpIJdMKalUwvvskeKnYyEe3shPRwedNcWtnhEKT3ZxvFjzywHDeGcKViIxTCAoOYQWP1qD7VNyg==" - }, "destroy": { "version": "1.2.0", "resolved": "https://registry.npmmirror.com/destroy/-/destroy-1.2.0.tgz", @@ -21743,11 +21627,6 @@ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true }, - "ev-emitter": { - "version": "1.1.1", - "resolved": "https://registry.npmmirror.com/ev-emitter/-/ev-emitter-1.1.1.tgz", - "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==" - }, "event-pubsub": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/event-pubsub/-/event-pubsub-4.3.0.tgz", @@ -22111,14 +21990,6 @@ "locate-path": "^3.0.0" } }, - "fizzy-ui-utils": { - "version": "2.0.7", - "resolved": "https://registry.npmmirror.com/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz", - "integrity": "sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==", - "requires": { - "desandro-matches-selector": "^2.0.0" - } - }, "flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmmirror.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz", @@ -22316,11 +22187,6 @@ "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", "dev": true }, - "get-size": { - "version": "2.0.3", - "resolved": "https://registry.npmmirror.com/get-size/-/get-size-2.0.3.tgz", - "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==" - }, "get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmmirror.com/get-stdin/-/get-stdin-4.0.1.tgz", @@ -22960,14 +22826,6 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, - "imagesloaded": { - "version": "4.1.4", - "resolved": "https://registry.npmmirror.com/imagesloaded/-/imagesloaded-4.1.4.tgz", - "integrity": "sha512-ltiBVcYpc/TYTF5nolkMNsnREHW+ICvfQ3Yla2Sgr71YFwQ86bDwV9hgpFhFtrGPuwEx5+LqOHIrdXBdoWwwsA==", - "requires": { - "ev-emitter": "^1.0.0" - } - }, "immutable": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/immutable/-/immutable-4.3.0.tgz", @@ -23798,15 +23656,6 @@ "object-visit": "^1.0.0" } }, - "masonry-layout": { - "version": "4.2.2", - "resolved": "https://registry.npmmirror.com/masonry-layout/-/masonry-layout-4.2.2.tgz", - "integrity": "sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==", - "requires": { - "get-size": "^2.0.2", - "outlayer": "^2.1.0" - } - }, "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmmirror.com/md5.js/-/md5.js-1.3.5.tgz", @@ -24125,11 +23974,6 @@ "through2": "^2.0.0" } }, - "mitt": { - "version": "3.0.0", - "resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.0.tgz", - "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==" - }, "mixin-deep": { "version": "1.3.2", "resolved": "https://registry.npmmirror.com/mixin-deep/-/mixin-deep-1.3.2.tgz", @@ -27014,16 +26858,6 @@ "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", "dev": true }, - "outlayer": { - "version": "2.1.1", - "resolved": "https://registry.npmmirror.com/outlayer/-/outlayer-2.1.1.tgz", - "integrity": "sha512-+GplXsCQ3VrbGujAeHEzP9SXsBmJxzn/YdDSQZL0xqBmAWBmortu2Y9Gwdp9J0bgDQ8/YNIPMoBM13nTwZfAhw==", - "requires": { - "ev-emitter": "^1.0.0", - "fizzy-ui-utils": "^2.0.0", - "get-size": "^2.0.2" - } - }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/p-finally/-/p-finally-1.0.0.tgz", @@ -30552,12 +30386,6 @@ "resolved": "https://registry.npmmirror.com/vue-cropper/-/vue-cropper-0.5.11.tgz", "integrity": "sha512-UeA3qL2BLCTGkOEAxEsxSNFO+qLYAn6YRHv4oS32cP9lMhF1vFmnAf/z+ZamtR0/Fh3sbZeZUCLVR2Ol2/dpTQ==" }, - "vue-demi": { - "version": "0.13.11", - "resolved": "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz", - "integrity": "sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==", - "requires": {} - }, "vue-hot-reload-api": { "version": "2.3.4", "resolved": "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", @@ -30633,17 +30461,6 @@ } } }, - "vue-masonry": { - "version": "0.16.0", - "resolved": "https://registry.npmmirror.com/vue-masonry/-/vue-masonry-0.16.0.tgz", - "integrity": "sha512-0Wi/BH4iYYRrAAFY/wokczz0lWWPg1vmOvFW4aC2nKybKf6kVqUvFfR9/+izDfzG657/vY+Om0gqOB5YPxPxuQ==", - "requires": { - "imagesloaded": "4.1.4", - "masonry-layout": "^4.2.2", - "mitt": "^3.0.0", - "vue-demi": "^0.13.2" - } - }, "vue-router": { "version": "3.6.5", "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-3.6.5.tgz", diff --git a/package.json b/package.json index 0b16f51..aafa2aa 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,6 @@ "vant": "^2.12.48", "vue": "^2.6.11", "vue-cropper": "^0.5.11", - "vue-masonry": "^0.16.0", "vue-router": "^3.2.0", "vue-waterfall2": "^1.10.6", "vuex": "^3.4.0" diff --git a/src/api/chooseModel.js b/src/api/chooseModel.js index 074f10f..a60f8ce 100644 --- a/src/api/chooseModel.js +++ b/src/api/chooseModel.js @@ -23,7 +23,7 @@ export function getModeList1(sex) { }) } /** - * @description:根据id获取模板详情 + * @description:根据id获取模板详情(旧) * @param {number} id * @return data */ @@ -34,6 +34,18 @@ export function getModeDetailById(id) { }) } +/** + * @description:根据id获取模板详情 + * @param {number} id + * @return data + */ +export function personPatchApi(id) { + return request({ + url: `/api/personPatch/findById?id=${id}`, + method: 'get' + }) +} + /** * @description:保存或修改用户作品 * @param {object} data diff --git a/src/components/editPosition.vue b/src/components/editPosition.vue index 920ee7f..22b3b4e 100644 --- a/src/components/editPosition.vue +++ b/src/components/editPosition.vue @@ -382,8 +382,8 @@ export default { // height: 140px; // background-color: red; img { - width: 150px; - height: 150px; + // width: 150px; + // height: 150px; // background-color: red; } } diff --git a/src/main.js b/src/main.js index 6916202..0c1d455 100644 --- a/src/main.js +++ b/src/main.js @@ -12,12 +12,11 @@ import ElementUI from 'element-ui'; //引入js import 'element-ui/lib/theme-chalk/index.css';//引入css import "@/styles/reset.scss"; // 引入清除默认样式 import "@/styles/index.scss"; // 引入全局样式 -import { VueMasonryPlugin } from 'vue-masonry'; + import waterfall from 'vue-waterfall2' -Vue.use(waterfall) -Vue.use(VueMasonryPlugin); // 瀑布流插件 +Vue.use(waterfall)// 瀑布流插件 Vue.use(ElementUI); Vue.use(Vant) diff --git a/src/views/model/chooseModel.vue b/src/views/model/chooseModel.vue index aa965ea..b45f703 100644 --- a/src/views/model/chooseModel.vue +++ b/src/views/model/chooseModel.vue @@ -18,9 +18,8 @@
-
+
暂无可用模板
-
+
@@ -51,7 +50,8 @@ import { getModeList, getModeList1, getModeDetailById, - saveOrUpdateUserVideo + saveOrUpdateUserVideo, + personPatchApi } from '../../api/chooseModel' Vue.use(Toast) @@ -99,11 +99,12 @@ export default { // }, selectModel(id) { - if (this.currentId != id) { - this.currentId = id - } else { - this.getModeDetail(id) - } + this.getModeDetail(id) + // if (this.currentId != id) { + // this.currentId = id + // } else { + // this.getModeDetail(id) + // } }, // 获取模板列表 @@ -122,7 +123,9 @@ export default { // 根据id获取模板详情 async getModeDetail(id) { try { - const res = await getModeDetailById(id) + // const res = await getModeDetailById(id) + // console.log(res, '根据id获取模板详情') + const res = await personPatchApi(id) console.log(res, '根据id获取模板详情') const modelDetail = res.data await this.goSetPaperWork(modelDetail) @@ -148,7 +151,8 @@ export default { const res = await saveOrUpdateUserVideo(data) console.log(res, '保存或修改用户作品') this.$router.push({ - path: '/previewModel', + // path: '/previewModel', + path: '/editModel', query: { id: res.data.id } @@ -266,23 +270,22 @@ export default { margin-bottom: 40px; .modeList { - display: flex; - justify-content: space-between; - align-items: center; - flex-wrap: wrap; - // margin: auto; - // padding: 0 23px; padding-left: 15px; + padding-right: 15px; width: 100%; // margin-right: -20px; + ::v-deep .vue-waterfall-column { + width: 50% !important; + margin: 0 !important; + } .model { position: relative; - text-align: left; - margin-bottom: 15px; - max-width: 154px; - max-height: 273px; - opacity: 0.9; + // text-align: left; + // margin-bottom: 15px; + // max-width: 154px; + // max-height: 273px; + // opacity: 0.9; padding: 5px; &-padding { } diff --git a/src/views/model/editModel.vue b/src/views/model/editModel.vue index 551da4a..024f5fa 100644 --- a/src/views/model/editModel.vue +++ b/src/views/model/editModel.vue @@ -520,12 +520,13 @@ export default { title: this.inputTitle, //标题 paperwork: this.textareaContent, //语音内容 backgroundId: this.materialList.BGI.id, //背景id - materialAllJson: JSON.stringify([...scList, shuziren]) + personJson: JSON.stringify(shuziren), // 数字人 + materialAllJson: JSON.stringify([...scList]) // 素材 } console.log(data, '最终提交的参数') // 当没有选择声音参数时 - if (!this.soundChoose.id || !this.soundChoose.mouldSmId) { + if (!this.soundChoose.id) { Toast.fail('请选择声音!') return } @@ -620,7 +621,11 @@ export default { try { const res = await getModelDetailById(id) console.log(JSON.parse(res.data.personMouldSm)) - this.materialList.virtual = JSON.parse(res.data.personMouldSm) + this.materialList.BGI = JSON.parse(res.data.backgroundSm) + this.materialList.scList = res.data.materialAllJson + ? JSON.parse(res.data.materialAllJson) + : [] + this.materialList.virtual = JSON.parse(res.data.personJson) if (!this.materialList.virtual.w) { this.materialList.virtual = { ...this.materialList.virtual, @@ -853,35 +858,21 @@ export default { mounted() { this.inPage = true scrollToID('top') - // window.addEventListener( - // 'popstate', - // Dialog.confirm({ - // // title: '退出登录', - // message: '您还未编辑完成,需要保存为草稿吗?' - // }) - // .then(async () => { - // const res = await that.submit() - // next() - // }) - // .catch(() => { - // next() - // }) - // ) - }, - beforeRouteLeave(to, from, next) { - let that = this - Dialog.confirm({ - // title: '退出登录', - message: '您还未编辑完成,需要保存为草稿吗?' - }) - .then(async () => { - const res = await that.submit() - next() - }) - .catch(() => { - next() - }) } + // beforeRouteLeave(to, from, next) { + // let that = this + // Dialog.confirm({ + // // title: '退出登录', + // message: '您还未编辑完成,需要保存为草稿吗?' + // }) + // .then(async () => { + // const res = await that.submit() + // next() + // }) + // .catch(() => { + // next() + // }) + // } } diff --git a/src/views/myPage/myPage.vue b/src/views/myPage/myPage.vue index 0f1926e..88acd17 100644 --- a/src/views/myPage/myPage.vue +++ b/src/views/myPage/myPage.vue @@ -68,49 +68,6 @@ - -
-
-
- - -
-
{{ item.title || '暂无' }}
-
视频时长:{{ formatSeconds(item.videoTime) }}
-
视频容量:{{ bytesToSize(item.videoSize) }}
-
- 创建时间:{{ - changeTime(item.createDate, 'YYYY-MM-DD hh:mm:ss') - }} -
-
- -
-
草稿
-
视频生成中
-
视频生成失败
-
- -
- -
-
-
-
=3.0.0", "vue@^2.5.17", "vue@^2.6.11", "vue@^3.0.0-0 || ^2.6.0", "vue@>= 2.6.0": +"vue@^2.0.0", "vue@^2.5.17", "vue@^2.6.11", "vue@>= 2.6.0": "integrity" "sha512-b2qkFyOM0kwqWFuQmgd4o+uHGU7T+2z3T+WQp8UBjADfEv2n4FEMffzBmCKNP0IGzOEEfYjvtcC62xaSKeQDrQ==" "resolved" "https://registry.npmmirror.com/vue/-/vue-2.7.14.tgz" "version" "2.7.14"