La aplicación Vue 3 está rota/no compilará después de la actualización del paquete. Cero errores antes de la actualización.
Recibo los siguientes errores de la consola del nodo.
errores
"export 'createElementBlock' (imported as '_createElementBlock') was not found in 'vue' "export 'createElementVNode' (imported as '_createElementVNode') was not found in 'vue' "export 'normalizeClass' (imported as '_normalizeClass') was not found in 'vue'Más información...
:class arroja el error normalizeClass .
Error del navegador
Uncaught TypeError: Object(...) is not a function at eval (App.vue?3dfd:2) at Module../node_modules/cache-loader/dist/cjs.js?!./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader-v16/dist/templateLoader.js?!./node_modules/cache-loader/dist/cjs.js?!./node_modules/vue-loader-v16/dist/index.js?!./src/App.vue?vue&type=template&id=7ba5bd90 (app.js:1091) at __webpack_require__ (app.js:854) at fn (app.js:151) at eval (App.vue?2083:1) at Module../src/App.vue?vue&type=template&id=7ba5bd90 (app.js:1310) at __webpack_require__ (app.js:854) at fn (app.js:151) at eval (App.vue?eabf:1) at Module../src/App.vue (app.js:1274)paquete.json
"dependencies": { "@stripe/stripe-js": "^1.17.0", "core-js": "^3.16.1", "date-fns": "^2.23.0", "firebase": "^8.9.1", "register-service-worker": "^1.7.2", "vue": "^3.0.0", "vue-router": "^4.0.0-0", "vuex": "^4.0.0-0" }, "devDependencies": { "@vue/cli-plugin-babel": "~4.5.13", "@vue/cli-plugin-pwa": "~4.5.13", "@vue/cli-plugin-router": "~4.5.13", "@vue/cli-plugin-typescript": "~4.5.13", "@vue/cli-plugin-vuex": "~4.5.13", "@vue/cli-service": "~4.5.13", "@vue/compiler-sfc": "^3.2.2", "sass": "^1.37.5", "sass-loader": "^10", "typescript": "~4.3.5" }Actualizaciones recientes
@vue/cli-plugin-babel ~4.5.0 → ~4.5.13 @vue/cli-plugin-pwa ~4.5.0 → ~4.5.13 @vue/cli-plugin-router ~4.5.0 → ~4.5.13 @vue/cli-plugin-typescript ~4.5.0 → ~4.5.13 @vue/cli-plugin-vuex ~4.5.0 → ~4.5.13 @vue/cli-service ~4.5.0 → ~4.5.13 @vue/compiler-sfc ^3.0.0 → ^3.2.2 sass ^1.26.5 → ^1.37.5 sass-loader ^8.0.2 → ^10.2.0 typescript ~4.1.5 → ~4.3.5 @stripe/stripe-js ^1.16.0 → ^1.17.0 core-js ^3.6.5 → ^3.16.1 firebase ^8.6.7 → ^8.9.1 register-service-worker ^1.7.1 → ^1.7.2Resolví mi problema con lo siguiente:
rm -rf node_modules/rm package-lock.jsonnpm cache verifynpm i && npm upSi usa sass, bloquee la versión a través de package.json.
"sass-loader": "^10" .
Ayer ayudé a mi amigo a resolver este problema. Ella es exactamente igual a la que encontraste. solución:
Este problema se debe a una versión incorrecta del paquete "@vue/compiler-sfc". No he mirado la razón específica. Actualmente estoy usando la versión 3.0.4 y una versión posterior causará errores de compilación. Entonces, la versión está bloqueada en package.json.
actualizar:
Me avergüenzo de haber cuestionado a @vue/compiler-sfc. De hecho, creo que esta vez encontré el problema. Debería ser un proyecto utilizado por un amigo, que aplicó la tecnología DLL de webpack, pero debido a que la versión del paquete no estaba bloqueada, el archivo DLL no se actualizó después de que se actualizó el paquete node_modules, lo que resultó en un índice de paquete incorrecto. Puede haber otros factores. En resumen, esta persona es demasiado débil en tecnología.
Sobre la configuración de dll. Cuando el paquete no ha cambiado, no necesitamos volver a empaquetar esas dependencias como vue, vue-router, etc. al empaquetar.
Esta vez la situación es:
El colega que resultó ser un amigo es demasiado inteligente. Supongo que se copió de un almacén en otro lugar y se cambió, así que no sé qué es un dll. Por lo tanto, no se genera ningún dll_v2 nuevo.
Solución: Genere un nuevo archivo dll y simplemente constrúyalo.
Acabo de encontrar una solución, seguí adelante y actualicé mi vue 3.0.0 a 3.2.0. Las advertencias ahora no aparecen.