Skip to content

Latest commit

 

History

History
88 lines (53 loc) · 3.22 KB

22.executor_de_pacotes_npx_node.md

File metadata and controls

88 lines (53 loc) · 3.22 KB

O executor de pacotes npx Node.js

Índice

npx é um comando muito poderoso que está disponível no npm a partida da versão 5.2, lançada em julho de 2017.

Se você não quiser instalar o npm, poderá instalar o npx como um pacote autônomo

O npx permite executar código criado com Node.js e publicado por meio do registro npm.

Execute facilmente comandos locais

Os desenvolvedores do Node.js costumavam publicar a maioria dos comandos executáveis como pacotes globais, para que eles estivessem no caminho e fossem executáveis imediatamente.

Isso foi uma dor porque você não poderia realmente instalar versões diferentes do mesmo comando.

A execução de npx commandname encontra automaticamente a referência correta do comando dentro da pasta node_modules de um projeto, sem precisar saber o caminho exato e sem exigir que o pacote seja instalado globalmente e no caminho do usuário.

Execução de comandos sem instalação

Há outro ótimo recurso do npx, que permite executar comandos sem primeiro instalá-los.

Isso é bastante útil, principalmente porque:

  1. você não precisa instalar nada. 2. você pode executar diferentes versões do mesmo comando, usando a sintaxe @version.

Uma demonstração típica do uso do npx é através do comando cowsay. cowsay imprimirá uma vaca dizendo o que você escreveu no comando. Por exemplo:

cowsay "Hello" vai imprimir

 _______
< Hello >
 -------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

Isso só funciona se você tiver o comando cowsay instalado globamente do npm anteriormente. Caso contrário, você receberá um erro ao tentar executar o comando.

npx permite que você execute esse comando npm sem instalá-lo. Se o comando não for encontrado, o npx o instalará em um cache central:

npx cowsay "Hello"

vai fazer o trabalho para você.

Agora, este é um comando inútil, mas engraçado. Outros cenários incluem:

  • executando a ferramente vue CLI para criar novos aplicativos e executá-los: npx @vue/cli create my-vue-app
  • criando uma nova aplicação React usando create-react-app: npx create-react-app my-react-app.

e muito mais.

Execute algum código usando uma versão diferente do Node.js

Use o @ para especificar a versão e combine isso com o pacote node npm:

npx node@10 -v #v10.18.1
npx node@12 -v #v12.14.1

Isso ajuda a evitar ferramentas como nvm ou outras ferramentas de gerenciamento de versão do Node.js.

Execute snippets de código arbitrários diretamente de um URL

npx não limita você aos pacotes publicados no registro npm.

Você pode executar o código que fica em um gist do GitHub, por exemplo:

npx https://gist.github.com/zkat/4bc19503fe9e9309e2bfaa2c58074d32

Claro, você precisa ter cuidado ao executar o código que você não controla, pois com grandes poderes vêm grandes responsabilidades.