Adicione uma variável de ambiente chamada NODE_PATH
e defina-a como %USERPROFILE%\Application Data\npm\node_modules
(Windows XP), %AppData%\npm\node_modules
(Windows 7/8/10) ou sempre que o npm acabar instalando os módulos no seu estilo Windows. Para fazer isso de uma vez por todas, adicione-a como uma variável do sistema na guia Avançado da caixa de diálogo Propriedades do sistema (execução control.exe sysdm.cpl,System,3
).
A solução rápida no Windows 7+ é apenas executar:
rem for future
setx NODE_PATH %AppData%\npm\node_modules
rem for current session
set NODE_PATH=%AppData%\npm\node_modules
Vale ressaltar que NODE_PATH
é usado apenas na importação de módulos nos aplicativos Node. Quando você quiser usar os binários dos módulos instalados globalmente na sua CLI, precisará adicioná-lo também à sua PATH
, mas sem node_modules
parte (por exemplo, %AppData%\npm
no Windows 7/8/10).
História antiga
Eu sou praticamente novo no node.js, então não posso estar totalmente certo, mas pela minha experiência, funciona da seguinte maneira:
- -g não é uma maneira de instalar bibliotecas globais, é apenas uma maneira de colocá-las no caminho do sistema para que você possa chamá-las na linha de comando sem escrever o caminho completo para elas. É útil, por exemplo, o aplicativo do nó está convertendo arquivos locais, como menos - se você o instalar globalmente, poderá usá-lo em qualquer diretório.
- O próprio node.js não olhou para o diretório global npm, está usando outro algoritmo para encontrar os arquivos necessários: http://nodejs.org/api/modules.html#modules_file_modules (basicamente, ele verifica todas as pastas no caminho, iniciando da pasta atual para node_modules e a verifica).
Consulte a pergunta semelhante para obter mais detalhes: Como instalo um módulo globalmente usando o npm?