wordpress個性主題電影站的seo
gitlab?cicd過程,使用docker部署Vue3前端項(xiàng)目,報(bào)錯如下:
針對?npm ERR! cb() never called!?這個報(bào)錯,網(wǎng)上有很多解決方案,大都是清空緩存,重新運(yùn)行npm?之類的。筆者全都試過,無法解決問題。筆者遇到的問題比較特殊,分析如下:
1、這個項(xiàng)目是2年前建立的,當(dāng)時的Vue3版本還比較低,使用的node版本是v14.18.1,就在不久前,node官方不再支持node14,才造成打包報(bào)錯。
2、基于docker文件先打出docker包,gitlab的CICD每次包pipline時都會新建一個docker容器,重新執(zhí)行npm?install?命令;
npm?install?無論是否增加代理,都會連到npm官方庫拉取安裝包,node:v14.18.1對應(yīng)的npm包已經(jīng)無法拉取完整的了。
解決:
1、升級node到v16.
2、針對package.json的所有依賴全部清空,然后?針對老的依賴中的每個依賴包單獨(dú)執(zhí)行?npm?i <package>,如:
npm i moment --save
安裝過程中可能會出現(xiàn)依賴的問題,如下。這個報(bào)錯就是不知道依賴的Vue是哪個版本,因此也無法安裝具體的依賴。解決方法是先安裝Vue3的某個版本。
npm i pinia --savenpm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: knowledgehub@0.0.0
npm ERR! Found: vue@3.4.13
npm ERR! node_modules/vue
npm ERR! peer vue@"^3.2.0" from @element-plus/icons-vue@2.3.1
npm ERR! node_modules/@element-plus/icons-vue
npm ERR! @element-plus/icons-vue@"^2.3.1" from element-plus@2.8.0
npm ERR! node_modules/element-plus
npm ERR! element-plus@"^2.8.0" from the root project
npm ERR! peer vue@"^3.2.25" from @vitejs/plugin-vue@2.3.4
npm ERR! node_modules/@vitejs/plugin-vue
npm ERR! dev @vitejs/plugin-vue@"^2.3.4" from the root project
npm ERR! 4 more (@vue/server-renderer, vue-demi, vue-demi, element-plus)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! pinia@"*" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: vue@2.6.14
npm ERR! node_modules/vue
npm ERR! peer vue@">= 2.5 < 2.7" from @vue/composition-api@1.7.2
npm ERR! node_modules/@vue/composition-api
npm ERR! peerOptional @vue/composition-api@"^1.4.0" from pinia@2.2.1
npm ERR! node_modules/pinia
npm ERR! pinia@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See C:\Users\jianjuns\AppData\Local\npm-cache\eresolve-report.txt for a full report.
3、先執(zhí)行需要安裝的Vue3的版本
npm i vue@3.2.37 --save // 此處必須制定Vue3的版本,Vue的版本指定后,其他包的版本會自動指定npm i vue-axios --savenpm i vue-cropper --savenpm i vue-cropper --save
原來的package.json文件如下:
全部依賴更新完成后的截圖如下:
觀察后可見,vue版本和各個依賴的包的版本都升級到了最新的版本。
修改完成后,重新提交發(fā)布,發(fā)布成功。