Use o comando: nome do pacote npm install ou nome do pacote npm i Pacotes instalados localmente aparecem no diretório node_module no diretório atual Se o pacote instalado localmente tiver uma CLI, o npm colocará seu script CLI em node_modules/.bin e usará o comando npx para chamá-lo.
1.2 Instalação global
Os pacotes instalados globalmente são colocados em um diretório global especial. Use o comando npm install --global package name ou npm i -g package name. O pacote instalado globalmente não está disponível para todos os projetos, ele fornece apenas ferramentas CLI globais. Na maioria dos casos, não há necessidade de instalar o pacote globalmente.
1.3 Comando de instalação
Depende do ambiente de produção npm i nome do pacote npm i --save nome do pacote npm i -S nome do pacote Instale dependências no ambiente de desenvolvimento npm i --save-dev nome do pacote npm i -D nome do pacote
1.4. Ao usar nodejs para importar um módulo, se o caminho do módulo não começar com ./ ou.../, o node pensará que o módulo importado vem do diretório node_modules.
1.5.roteiro npm
Configure comandos CLI comumente usados no campo script de package.json e use o nome do script npm run para executar o script. npx pode ser omitido no script.
2. Problemas anteriores com npm:
Os diretórios de dependência são profundamente aninhados: no passado, as dependências do npm eram aninhadas e o sistema Windows não suportava diretórios muito profundos.
Velocidade de download lenta: devido aos níveis profundos de aninhamento, os downloads de pacotes só podem ser baixados em série;
A saída do console é complexa: imprimindo muitos detalhes do pacote
Problema de transplante de projeto: No passado, havia apenas o arquivo de configuração package.json, mas nenhum arquivo package-lock.json.
3. O surgimento do fio porque apresenta as seguintes vantagens:
Use uma estrutura de diretório simples
download paralelo
Usar cache local
Simplifique as informações de saída do console e produza apenas informações importantes
Use o arquivo yarn-lock para registrar dependências exatas
4. Influenciado pelo fio, o npm6 baseou-se nos conceitos avançados do fio e fez as seguintes otimizações:
Achatamento de diretório
download paralelo
cache local
Use package-lock.json para registrar dependências exatas
Adicionado um grande número de aliases de comando
Npx integrado, você pode iniciar ferramentas CLI locais
Simplifica bastante a saída do console
5. cnpm
O servidor de registro do npm está no exterior, o que pode causar downloads lentos ou falhas. No passado, o npm não fornecia a função de modificar o registro. O Taobao construía seu próprio registro, que é o espelho Taobao npm. O Taobao também fornece uma ferramenta CLI cnpm.
6. pnpm
Assim como o npm e o yarn, o cache ainda é usado para salvar pacotes instalados.Use pnpm-lock.yaml para registrar versões detalhadas de dependências
Diferente do fio e do npm, o pnpm usa links simbólicos e links físicos para colocar dependências, evitando a cópia de arquivos, melhorando a eficiência da instalação e reduzindo bastante o uso do espaço em disco.
Devido ao uso de links simbólicos e links físicos, o pnpm pode evitar o problema de caminhos muito longos em sistemas Windows, por isso usa dependências de árvore. Devido às dependências em árvore, os projetos só podem usar dependências diretas, não dependências indiretas.
7. Princípio pnpm:
A essência de um arquivo: O arquivo é na verdade um ponteiro apontando para um endereço de armazenamento externo (disco rígido, unidade flash USB). Excluir um arquivo, na verdade, exclui o ponteiro, por isso é muito rápido.
Cópia do arquivo: Copie o conteúdo apontado pelo ponteiro do arquivo e gere um novo ponteiro apontando para o novo conteúdo.
Link físico: Copia um ponteiro de arquivo A para outro ponteiro de arquivo B O arquivo B é um link físico para o arquivo A.
Link simbólico (soft link): Crie um link simbólico B para um arquivo ou pasta A, então B aponta para A.
Atalho: semelhante a um link simbólico, é um método de link suportado pelo Windows nos primeiros dias. Não é apenas um ponteiro, mas também contém várias informações, como permissões, compatibilidade, método de inicialização, etc. Os atalhos são exclusivos dos sistemas Windows e não são usados em várias plataformas.
A diferença entre links simbólicos e links físicos:
Links físicos só podem vincular arquivos, enquanto links simbólicos podem vincular arquivos e diretórios.
Depois que a conexão for concluída, o link físico será associado apenas ao conteúdo do arquivo e não terá nada a ver com o link anterior. Os links simbólicos estão sempre associados ao arquivo vinculado anteriormente e não estão diretamente associados ao arquivo de conteúdo.