Come posso sapere quando richiedere all'utente di eseguire npm install
se ci sono delle dipendenze impreviste di package.json?Come verificare facilmente le corrette dipendenze di npm installate?
vorrei fare questo, perché se ogni require()
fallisce, l'utente riceve un messaggio di errore povero:
module.js:340
throw err;
^
Error: Cannot find module 'nopt'
Ho già cercato di controllare solo per l'esistenza di una directory node_modules
, ma questo funziona solo efficacemente per i cloni git freschi. Ho anche provato solo a richiedere npm
e ad eseguire npm install
come parte del carico, ma è molto pesante.
Spero ci sia una libreria più leggera là fuori che analizza solo package.json
e si assicura che i contenuti di node_modules
soddisfino i requisiti.
Un'idea era usare process.on('uncaughtException')
per catturare solo gli errori di importazione del modulo, ma cercando di vedere se c'è una soluzione "standard" prima.
Scorrere attraverso 'node_modules', analizzare la' versione' nel loro 'package.json' e confrontare con il proprio' package.json'? – jgillich
non c'è un modo efficace per farlo, 'npm install' prende in considerazione tutte le dipendenze dei moduli, non vedo come dovrebbe generare un errore nel caricamento dei moduli nel pacchetto npm. Esistono dipendenze opzionali se questo è ciò che stai cercando. – Gntem
Guarda [grunt-check-dependencies] (https://github.com/mzgol/grunt-check-dependencies/blob/master/tasks/lib/check- dependencies.js). Se usi il grunt, hai praticamente finito. In caso contrario, la sostituzione del file grunt/delle chiamate della console con il nodo fs/console non dovrebbe richiedere molto tempo. –