Así que esta empresa me asignó la tarea de crear una aplicación Vue simple. Bifurqué el código de su repositorio e intenté ejecutar npm install . Pero me dio un par de errores que están en este archivo de registro . También aquí está mi archivo package.json :
{ "name": "todo-app", "version": "0.1.0", "private": true, "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build", "test:unit": "vue-cli-service test:unit", "lint": "vue-cli-service lint" }, "dependencies": { "axios": "^0.21.1", "core-js": "^3.6.5", "vue": "^3.0.0", "vue-router": "^4.0.0-0", "vuex": "^4.0.0-0" }, "devDependencies": { "@vue/cli-plugin-babel": "~4.5.0", "@vue/cli-plugin-eslint": "~4.5.0", "@vue/cli-plugin-router": "~4.5.0", "@vue/cli-plugin-unit-jest": "~4.5.0", "@vue/cli-plugin-vuex": "~4.5.0", "@vue/cli-service": "~4.5.0", "@vue/compiler-sfc": "^3.0.0", "@vue/test-utils": "^2.0.0-0", "autoprefixer": "^9.8.6", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", "eslint-plugin-vue": "^7.0.0", "jest-transform-stub": "^2.0.0", "node-sass": "^4.12.0", "postcss": "^7.0.36", "sass-loader": "^8.0.2", "tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.2.7", "typescript": "~3.9.3", "vue-jest": "^5.0.0-0" } }Aquí hay un par de información adicional si es necesario:
npm : 7.21.1@vue/cli : 4.5.13Node : 16.0.0parte del error
5827 verbose stack Error: command failed 5827 verbose stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27) 5827 verbose stack at ChildProcess.emit (node:events:365:28) 5827 verbose stack at maybeClose (node:internal/child_process:1067:16) 5827 verbose stack at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5) 5828 verbose pkgid node-sass@4.5.3 5829 verbose cwd /home/yarkin/Documents/WEB/VueJS/todo-app 5830 verbose Linux 5.11.0-37-generic 5831 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "--saveDev" "node-sass@4.5.3" 5832 verbose node v16.0.0 5833 verbose npm v7.21.1 5834 error code 1 5835 error path /home/yarkin/Documents/WEB/VueJS/todo-app/node_modules/node-sass 5836 error command failed 5837 error command sh -c node scripts/build.js 5838 error Building: /usr/local/bin/node /home/yarkin/Documents/WEB/VueJS/todo-app/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=El problema es específico de node-sass , en este proyecto parece ser la única dependencia binaria que depende de una plataforma y una versión de Node.
Hay un mensaje que indica que la versión del archivo de bloqueo es antigua, esto significa que se creó con otra versión de NPM (v6), esto puede ser una posible fuente de problemas debido a las diferencias en las dependencias resueltas.
Como enumera la documentación , las diferentes versiones node-sass están vinculadas a diferentes versiones de Node, "node-sass": "^4.12.0" sugiere que se supone que el proyecto se ejecuta con Node v12, mientras que se usó v16.
Las posibles soluciones son:
Cambie a Node v12 para este proyecto (puede ser demasiado antiguo para otros) y ejecútelo como está
Cambie a Node v14 (la última versión de LTS, menos problemas en general) y actualice node-sass a ^4.14
Quédese con Node v16 y actualice node-sass a ^6.0
Quédese con Node v16, elimine node-sass , en su lugar agregue sass independiente de la plataforma, siga las pautas de migración para Dart Sass si surgen problemas (principalmente / sintaxis)