Executando pacotes de nós locais

Quando você instala pacotes de nós, geralmente precisa executá-los. Tudo bem se você instalá-los globalmente e tiver o diretório de pacote global em seu PATH:

$ npm install -g karma

Agora você pode correr

$ karma init my.conf.js

Mas se você deseja apenas instalar um pacote localmente, ele não estará acessível em seu PATH.

Muitos pacotes contornam isso fornecendo um pacote -cli; karma-cli por exemplo. No entanto, isso é um pouco chato, instalar um pacote e depois ter que instalar seu pacote -cli. Isso se tiver um pacote -cli.

No entanto, existe uma solução útil (embora um pouco hackeada) que encontrei neste artigo .

Escreva um pequeno script de shell. Isso é meu:

#!/bin/bash
bin
=$1
shift

./node_modules/.bin/$bin $@

Ele pega o comando que você deseja executar com seus parâmetros e o executa a partir do diretório node_modules / .bin no diretório do projeto a partir do qual você está trabalhando.

Salve-o como “npm_exec” e torne-o executável:

$ chmod +x npm_exec

Mova-o para / usr / local / bin ou outro diretório que esteja em seu PATH:

$ mv npm_exec /usr/local/bin

Agora você pode executar pacotes de nós instalados localmente a partir do diretório do seu projeto, como este:

$ npm_exec karma init my.conf.js