2013-04-02 10 views
6

Ho eseguito il seguente codice per installare il modulo di sottolineatura js:Perché il modulo di sottolineatura non è disponibile nella console Node.js?

npm install -g underscore 

poi ho cercato di accedervi tramite la console di nodo, ma ottengo il seguente errore:

node 
> __ = require('underscore'); 
Error: Cannot find module 'underscore' 
    at Function.Module._resolveFilename (module.js:338:15) 
    at Function.Module._load (module.js:280:25) 
    at Module.require (module.js:362:17) 
    at require (module.js:378:17) 
    at repl:1:6 
    at REPLServer.self.eval (repl.js:109:21) 
    at rli.on.self.bufferedCmd (repl.js:258:20) 
    at REPLServer.self.eval (repl.js:116:5) 
    at Interface.<anonymous> (repl.js:248:12) 
    at Interface.EventEmitter.emit (events.js:96:17) 

Perché non lo fa questo esempio funziona?

+0

Cosa c'è nella variabile di ambiente 'NODE_PATH'? Dove è stato installato il carattere di sottolineatura? L'installazione è riuscita? –

risposta

6

Non so davvero perché, ma in effetti non riesce (quando si installa underscore globalmente, come hai fatto tu).

Se si installa senza -g, dovrebbe funzionare (attenzione, però, come '_' è già utilizzato da Nodo REPL per contenere il risultato dell'ultima operazione, come spiegato qui: Using the Underscore module with Node.js

avete veramente bisogno di installarlo globalmente

+1

Ok, non ricordare che, se si installa moduli a livello globale, poi, quando imponendo loro, si deve chiedere loro utilizzando require ('{prefix}/modulo') Come spiegato qui: http: //blog.nodejs. org/2011/03/23/npm-1-0-global-vs-local-installation/ Nel mio caso, poiché utilizzo nvm, il modulo è stato installato su .nvm/$ VERSION/lib/node_modules così l'aggiunta di quel percorso al fabbisogno nel REPL del nodo ha funzionato. Spero che aiuti !! – Javo

4

ho appena avuto lo stesso problema

$ export NODE_PATH=/usr/local/share/npm/lib/node_modules 

risolto fuori per me,? questo dipende, ovviamente, dalla piattaforma e dove NPM ha installato anche, come accennato in. Javo's ans wer, non chiamarlo _ nella REPL.

+0

Grazie. Sto usando NVM e il nodo V4.2.1 e ho dovuto 'NODE_PATH export = ~/.nvm/versioni/node/V4.2.1/lib/node_modules /' –

Problemi correlati