Quale sarebbe il modo preferito per gestire i moduli interni all'interno di un'applicazione node.js?Come gestire i moduli Node.JS interni
Voglio dire, attualmente abbiamo un'applicazione abbastanza grande e ci sono diverse dipendenze, installate tramite npm. Abbiamo node_modules
in .gitignore
. Pertanto non è nel repository. Usiamo npm shrinkwrap
per congelare le versioni dei moduli, quindi, al momento dell'implementazione, un npm install
mette insieme tutto ciò di cui abbiamo bisogno in node_modules
.
Il problema è che, dal momento che la nostra app si sta ingrandendo, vogliamo dividerla in moduli più piccoli. Ora, se creo un modulo foo
e lo metto in node_modues
, ho bisogno di permetterlo nel repository, che non sembra così accurato da avere entrambi i moduli ignorati e controllati in node_modules
.
Non possiamo pubblicarli sul registro di NPM perché non sono realmente "pubblici".
C'è qualche soluzione ovvia di cui non sono a conoscenza?
Basta incollare le mie librerie/moduli privati in una directory '/ lib' sotto il progetto invece che in' npm_modules'. In questo modo possono anche essere inclusi in Git. –
Sì, è molto comune avere una cartella lib e richiedere ('./ lib/myThing') –
Con la cartella lib, ho bisogno di nominare i moduli esplicitamente ogni volta che ne ho bisogno. Ho bisogno di loro molto :) Da tutti i tipi di posti. Non mi piace molto 'require (" ../../../../../ lib/foo ")'. Averli in moduli di nodi rende l'accesso molto più facile. –