Soy novato en Node.js.
Cada vez que quiero instalar un paquete, lo hago como
"npm install -g package-name"
Lo que he visto dentro de mis aplicaciones de nodo es que se ha creado un directorio "node_modules" y todos los módulos instalados están allí.
Entonces quiero usar "gruñido" para automatizar mis pruebas para pruebas de unidad frontales javascirpt.
Y ejecuté el comando para instalar "npm install -g grunt"
pero cuando entro en mi directorio de prueba y ejecuto gruñido me sale "Fatal error: Unable to find local grunt."
Pero si lo instalo dentro del directorio "test" funciona bien.
La estructura de mi proyecto como a continuación:
-backend
-tests
-model
-node_modules
-package.json
-others
-frontend
-tests
-js
-package.json
-node_modules
-others
¿Cómo puedo administrar paquetes de nodos desde un solo pacakge.json y ejecutar las pruebas por separado en frontend y backend? ¿Cuáles son las formas optimizadas de hacer estas cosas?
Gracias por adelantado.
Respuestas
0 para la respuesta № 1los -g
flag en npm instalará el módulo a nivel mundial, así es como grunt
funciona como una herramienta CLI, pero para sus dependencias, probablemente solo desee que se instalen en su node_modules
carpeta, definida en su package.json
.
¿Estás navegando por tus módulos front-end? Lo más probable es que no desee que tanto el front-end como el back-end tengan el mismo conjunto de dependencias, lo mejor es mantenerlos separados. ¿Sus módulos frontend son solo tareas difíciles? Corriendo grunt
en cualquiera frontend
o backend
los directorios llamarán al archivo grunt solo allí.
Mantenga estos dos directorios separados: ahorrará mucho dolor de cabeza en el futuro.