NPM: Gerenciar Pacotes JavaScript

Introdução NPM

O que é NPM?NPM (Node Package Manager) é um gerenciador de pacotes para JavaScript, é o padrão para node.js. Quando você instala o nó, o NPM também é instalado. E o que isto significa? Bem, através do NPM podemos instalar e gerenciar os pacotes de nossos aplicativos.

Quando usamos Node.js, rapidamente temos que instalar novos módulos (bibliotecas), já que o Node, sendo um sistema fortemente modular, vem praticamente vazio. Portanto, para a maioria das operações, teremos que instalar módulos adicionais. Esta operação é feita de forma muito fácil com a ferramenta NPM.

Como instalar o Node.js?Para instalar o Node.js, a primeira coisa que devemos fazer é entrar no site oficial:

https://nodejs.org/

E baixe o instalador de acordo com nosso sistema operacional.

PROLONGAR

Ao baixar o arquivo de instalação, basta clicar duas vezes nele e seguir as instruções do assistente de instalação do Node.js.

Depois de instalado para usuários do Windows, o console node.js estará acessível a partir da barra de inicialização, conforme mostrado na imagem a seguir:

PROLONGAR

Os usuários de Mac precisarão abrir o terminal de seu sistema operacional, conforme mostrado na imagem a seguir:

PROLONGAR

Para verificar se ele está instalado corretamente, executamos o seguinte comando em nosso terminal:

 não dê
(Windows / Linux / Terminal OS X Console)

Nós empurramos Digitar e inserimos a seguinte linha:

 Console.log ('Node.js instalado com sucesso');
(Windows / Linux / Terminal OS X Console)

Pressionando Digitar, vai nos mostrar a mensagem "Node.js instalado com sucesso". Para ver a lista de comandos permitidos pelo node.js, inserimos o comando .ajuda conforme mostrado na seguinte imagem:

Para ver o Versão NPM instalada, executamos o seguinte comando:

 npm -v
O que resultará no seguinte:

Gerenciador de pacotes
O Gerenciador de pacotes NPM, é um pouco diferente de outros gerenciadores de pacotes que conhecemos, porque os instala localmente nos projetos. Ou seja, quando um módulo é baixado, ele é adicionado a um projeto local, que é aquele que o terá disponível para inclusão. Embora também haja a possibilidade de instalar os pacotes globalmente em nosso sistema.

Iniciando um novo projeto

Quando iniciamos um novo projeto usando node.js, é necessário criar um arquivo chamado package.json. Esse é um tipo de manifesto que, por sua vez, contém a lista de todas as dependências que seu projeto usará.

Uso de package.json


A melhor maneira de gerenciar pacotes instalados localmente é criar um arquivo package.json, que nos permite:
  • Documente quais pacotes nosso projeto usa.
  • Especifique qual versão do pacote específico nosso projeto usará.
  • Isso nos permite compartilhar facilmente nossas dependências com outros desenvolvedores.

Requisitos:

Um arquivo package.json deve ter pelo menos:

1. Nome:

  • Tudo em minúsculas.
  • Uma palavra sem espaço.
  • Traço e sublinhado são permitidos.

2. Versão:

Exemplo de um package.json:

 {"Nome": "project_package", "Versão": "1.0.0"}
Se você deseja gerar um novo package.json, existem 2 maneiras de fazer isso:

1. Carregue um package.json padrão: A partir do console, executamos a seguinte linha de comando.

 npm init - sim
O que resultará no seguinte:

Para modificar esta configuração, basta abrir o arquivo criado com um editor de texto e modificar os atributos que desejamos.

2. Crie um package.json com o assistente: No console, executamos o seguinte comando.

 npm init
O assistente perguntará o que você deseja adicionar a cada atributo, resultando no seguinte:

Instalando dependências


No site https://www.npmjs.com/ você pode encontrar centenas de projetos; que são posicionados de acordo com diferentes critérios (número de downloads, popularidade …). A partir da página da web é o caminho mais rápido, porém o NPM também possui um parâmetro de pesquisa para pesquisar pacotes. Para fazer isso, você deve executar a seguinte linha de comando:

Instalação Local
Assim que o arquivo for definido package.json, você pode adicionar as dependências nele e adicionar uma lista de tudo que você precisa:

 "dependencies": {"express": "*", "grunt": "*", "bower": "*"}
Que deve ser o seguinte:

Instale os pacotes listados em package.jsonPara instalar os pacotes listados em package.json e suas dependências, você deve estar localizado no diretório onde o referido arquivo está localizado e executar a seguinte linha de comando:

 npm install

Instale pacotesVocê também pode instale novos pacotes e salve-os do terminal, executando o seguinte:

 npm install - salvar new_package_name

Desinstalar pacotesDesinstalar pacote e excluí-lo de package.json:

 desinstalação do npm - salvar nome_do_pacote

Instale o pacote diretamente de um repositório Git

 npm install git: //github.com/blured/mipaquete.git

Instale uma versão específica de um pacote

 npm install [email protected]

É importante notar que este método de instalação local significa que seus arquivos serão armazenados e disponíveis apenas dentro do diretório do seu projeto.

Instalação Global
Outra maneira de instalar pacotes é fazê-lo globalmente. Isso é comumente usado para pacotes que fornecem funcionalidade da linha de comando, como grunt, bower, yeoman, entre outros.

Tome por exemplo o Pacote JSHint, que é um analisador de código JavaScript que nos permite mostrar pontos nos quais seu código não cumpre certas regras estabelecidas de "código limpo". Para instalá-lo globalmente, executamos o comando de instalação adicionando o -g attribute e com privilégio de root (para usuários de Mac e Linux).

 sudo npm install -g jshint
 npm install -g jshint

Para confirmar sua instalação, basta executar seu comando para avaliar alguns arquivos JavaScript quanto a erros. Como nossa instalação foi global, de qualquer local podemos executar Jshint, indicando o caminho onde nosso arquivo JavaScript está localizado. Exemplo:

 projeto jshint \ MiApp \ www \ js \ index.js
Resultando em um erro em nosso arquivo JavaScript.

Para saber em que pasta estão armazenadas todas essas bibliotecas de escopo global, podemos usar o comando de prefixo e do marcador global -g, da seguinte maneira:

 prefixo npm -g
Em um terminal OS X, ele dará o seguinte resultado:

No CPrompt de comando do Windows o caminho é mostrado, tendo como única variável, o nome da pasta do usuário que fez a instalação. Neste caso seria "Zhock":

No Windows, o NodeJS não possui a pasta anterior definida como global para a inclusão de suas bibliotecas por meio de require. Portanto, se tentarmos incluir uma biblioteca global, obteremos o erro "Erro: Não é possível encontrar o módulo".

Para resolvê-lo teremos que definir a variável de sistema NODE_PATH, dando a ela o valor do caminho global do NPM e adicionando a pasta \ node_modules \ no final.

Como podemos ver, no Windows 7 o caminho global de instalação do NPM é:

 C: \ Usuários \ USUÁRIO \ AppData \ Roaming \ npm \
Portanto, o valor de NODE_PATH será:
 C: \ Users \ USER \ AppData \ Roaming \ npm \ node_modules \
Ou o que é o mesmo:
 % APPDATA% \ npm \ node_modules \

PROLONGAR

Gerenciamento de dependências
O NPM permite que você gerencie as dependências de seus projetos e as versões de que você precisa. Como é sabido, os projetos de código aberto estão se movendo ativamente e mudam de versão com frequência. O package.json ele pode ser configurado para controlar esses tipos de alterações.

O números de versão eles normalmente contêm 3 elementos:

  • Versão principal quando rompe com funcionalidades anteriores, por exemplo: 2.0.0
  • Versão secundária com novos recursos que não interrompem os existentes, por exemplo: 1.1.0
  • Patch lançado com correções de bugs e outras pequenas alterações, por exemplo 1.0.1

Defina as versões do pacote


Digamos que você comece a desenvolver com certas versões de pacotes. Você pode atualizá-los e ainda manter a compatibilidade, especificando o intervalo de alterações aceitas.
 "dependencies": {"Package1": "1.0.0", // aceita apenas a versão 1.0.0 "container2": "1.0.x", // qualquer versão de hotfix na versão 1.0 "Package3": "*", / / versão mais recente, "Package4" não é recomendado: "> = 1.0.0", // alterações após 1.0.0 "package5": "= 1.8.0 = 1.1.0 <2.0.0" package8 ":" latest " , // nome da tag da versão mais recente "package9": "", // igual a * ou seja, versão mais recente "packageX": "= 2.3.1 = 2.5.2 <3.0.0"}
ObservaçãoSe você não tiver certeza de qual versão usar, adicione o caractere * curinga e execute o comando npm update -save, que veremos mais tarde neste tutorial.

Comando:

 npm update --save

Pacotes de atualização


Para ver todos os pacotes instalados localmente, use o comando ls e adicione o atributo -l para uma breve descrição. Para ver os pacotes instalados globalmente, adicione o atributo -g.
 npm ls -l
Para verificar qual pacote pode ser atualizado local e globalmente, execute o seguinte:
 npm desatualizado npm desatualizado -g - profundidade = 0
Para trazer um pacote localmente para uma versão superior à atual, execute o seguinte:
 atualização npm
Para fazer isso globalmente, adicione o -g attribute

Gerenciando Cache


Quando o NPM instala um pacote, ele mantém uma cópia para a próxima vez que você quiser instalar o pacote sem a necessidade de uma conexão com a Internet. Essas cópias são armazenadas no seguinte diretório por padrão:
 Posix (Linux, Os X …): ~ / .npm Windows:% AppData% / npm-cache
Se você quiser ver em qual diretório o cache do NPM está sendo armazenado, basta executar a seguinte linha de comando:
 npm config obter cache
Este diretório geralmente é preenchido com pacotes antigos que não usamos mais, por isso é recomendável limpar periodicamente com a seguinte linha de comando:
 limpeza de cache npm

wave wave wave wave wave