Tengo una aplicación de nodo simple que tiene una sola dependencia en otra aplicación en github. La dependencia se instala perfectamente con npm install
, pero cuando intento solicitar algo allí instalado, dice que no está disponible. Por ejemplo, la aplicación github instala Mongoose como una dependencia. Pensé que esta aplicación padre sería capaz de acceder a ese módulo, ya que es en un niño:Requerir dependencia de otra dependencia en los módulos de nodo
var mongoose = require('mongoose')
La estructura se ve algo como esto:
/app
/node_modules
/github_dependency [parent module]
/node_modules
/mongoose [child module]
No sólo tengo que incluir mangosta como la dependencia también en la aplicación principal o ¿hay alguna manera de obtener acceso a ese módulo por medio del niño?
Gracias, estamos Seguiré esta convención. Una cosa que sí quería mencionar, ¿podría esto teóricamente dar como resultado múltiples dependencias duplicadas en el proyecto? –
Podría, y normalmente tendrá varias instancias de varios módulos diferentes (y su versión) en un proyecto de nodo. Esa es una de las fortalezas de npm IMO, después de haber pasado una parte considerable de los años '00 resolviendo fallas en los cargadores de clase de diferentes contenedores Java ... –
Hay una muy buena razón para usar esta técnica. Si realiza una solicitud de ('github/node_modules/mongoose'), está utilizando la misma instancia de mangosta que github está usando, por lo que comparte su grupo de conexiones. Esta técnica también es útil para garantizar que estés utilizando las mismas versiones. –