Maison > interface Web > js tutoriel > Introduction à npm&package.json dans Nodejs

Introduction à npm&package.json dans Nodejs

零下一度
Libérer: 2017-06-17 10:38:48
original
1315 Les gens l'ont consulté

Cet article présente principalement l'explication détaillée de npm&package.json de Nodejs. L'éditeur pense que c'est assez bon, je vais donc le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur et jetons un coup d'œil

Depuis le début, en tant que développeur front-end, dans l'entreprise, j'écris d'abord la page, puis je coopère avec le back-end pour remplir les données dans le front -fin de page, mais de temps en temps j'ai du temps libre. Quoi qu'il en soit, je regarderai également certains frameworks et ainsi de suite, puis j'utiliserai le framework pour créer une application, une application, etc. la page contient toujours de fausses données et il n'y a aucun moyen de faire la partie demande de données (car il n'y a pas d'arrière-plan). Je pense donc qu'il est temps d'apprendre le nœud, ce qui sera également utile pour le webpack, l'ingénierie front-end, etc. que j'apprendrai à l'avenir.
En tant que front-end, parce que des outils tels que gulp et webpack sont souvent utilisés, les plus courants que nous voyons sont npm et package.json, résumons-les donc d'abord.

npm

Initialisation


$ npm init
or
$ npm init --y
Copier après la connexion

Lorsque nous faisons du développement front-end, nous utilisons souvent des outils de construction, tels que gulp, webpack, etc. Afin de permettre aux autres de participer, nous devons indiquer aux autres quelles sont les dépendances du projet, puis laisser les autres installer les mêmes dépendances. . et le package.json généré par npm init est utilisé pour enregistrer les dépendances dans notre projet. De même, lors du développement de nœuds, des packages de dépendances seront également utilisés et des enregistrements package.json sont également nécessaires.

Entrez npm init dans le terminal et il vous demandera diverses informations sur package.json pour confirmer. Si tous utilisent la valeur par défaut , vous pouvez saisir directement npm init --y dans le terminal pour générer rapidement package.json.

Installer les packages de dépendances


$ npm install <package name> <package name> ...

$ npm install <package name> -g

$ npm install <package name> --save

$ npm install <package name> --save-dev

$ npm install <pacakage name> --O //--save-optional -B: --save-bundle -E: --save-exact
Copier après la connexion

npm install <package name> -g signifie installation globale. une installation globale. Le package d'installation du module est installé en tant que package global. Cela ne signifie pas qu'il peut être référencé de n'importe où via require(). commande exécutable disponible. Cela signifie que tous les packages installés via -g peuvent être exécutés en mode commande dans le terminal, comme gulp, webpack, etc. La différence entre

--save et --save-dev est que le premier est une dépendance nécessaire pour exécuter le projet dans l'environnement de production et est enregistrée sous le mot-clé dependencies dans package.json après l'installation tandis que le second ; est une dépendance nécessaire lors du développement, enregistrée sous le mot-clé devDependencies après l'installation.

De même --O/B/E sera enregistré respectivement sous les mots-clés correspondants.

Mettre à jour les packages de dépendances


$ npm update

$ npm update -g

$ npm outdated

$ npm outdated -g
Copier après la connexion

Exécuter dans le répertoire du projet npm update pour mettre à niveau les dépendances utilisées dans le projet vers la dernière version et npm update -g peut mettre à niveau les packages de dépendances installés globalement vers la dernière version.

npm outdated permet de vérifier si les modules sont obsolètes et de les lister.

Désinstaller les dépendances


$ npm uninstall <package name> <package name> ...

$ npm uninstall <package name> -g

$ npm uninstall <package name> --save

$ npm uninstall <package name> --save-dev
Copier après la connexion

Utilisez npm uninstall pour désinstaller les dépendances, mais après la désinstallation, dans package.json Les enregistrements ne sera pas supprimé. Si vous souhaitez supprimer les enregistrements dans package.json lors de la désinstallation des dépendances, vous devez utiliser toutes les options lors de l'installation lors de la désinstallation. Par exemple, si vous utilisez npm install <package name> --save lors de l'installation, utilisez également lors de la désinstallation. npm uninstall <pacakage name> --save, et si --save-dev est utilisé, vous devez ajouter la même option lors de la désinstallation.

Utiliser la commande npm personnalisée

Dans package.json, il y a un mot-clé scripts, il vous suffit d'écrire la commande personnalisée dans le mot-clé et de correspondre simplement à la commande réelle exécutée.


"scripts":{
  "test": "nonde ./test.js",
  "dev": "gulp --gulpfile gulpfile-dev.js",
  "build": "gulp --gulpfile gulpfile-build.js"
}
Copier après la connexion

Dans la configuration ci-dessus, tant que nous exécutons npm dev dans le terminal, nous exécutons gulp --gulpfile gulpfile-dev.js, ce qui nous sauve la nécessité de Il est très pratique de saisir une longue commande dans le terminal.

Autres

npm view <pacakage name>Vous pouvez afficher le fichier package.json du package. Si vous souhaitez uniquement voir une certaine fonctionnalité du package, ajoutez simplement le fichier package.json. clé correspondante à la fin. Par exemple, npm v zepto version permet d'afficher la version de zepto actuellement installée, v est l'abréviation de view.

npm ls peut analyser tous les packages pouvant être trouvés via le chemin du module sous le projet en cours et générer une arborescence de dépendances.

npm doc <package name>Vous pouvez ouvrir le site officiel du package dépendant, qui ouvre en fait la page d'accueil dans package.json.

fichier package.json

Après l'exécution de npm init, un fichier package.json sera généré, qui est utilisé pour enregistrer le projet Les dépendances utilisées dans le projet et les informations de configuration du projet (telles que le nom, la version, la licence, etc.). La commande npm install télécharge automatiquement les dépendances nécessaires au fonctionnement et au développement du projet en fonction de ce fichier de configuration .

一个比较完整的package.json文件如下:


{
  "name": "project",
  "version": "1.0.0",
  "author": "张三",
  "description": "第一个node.js程序",
  "keywords":["node.js","javascript"],
  "repository": {
    "type": "git",
    "url": "https://path/to/url"
  },
  "license":"MIT",
  "engines": {"node": "0.10.x"},
  "bugs":{"url":"http://path/to/bug","email":"bug@example.com"},
  "contributors":[{"name":"李四","email":"lisi@example.com"}],
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "express": "latest",
    "mongoose": "~3.8.3"
  },
  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-contrib-concat": "~0.3.0"
  }
}
Copier après la connexion

在package.json中一些关键字的含义:

1.name:包名

2.version:版本号

3.description:包的描述

4.homepage:包的官网url

5.autor:包的作者名字

6.contributors:包的其他贡献者

7.dependencies:依赖包的列表,使用npm install可以安装依赖包到node_medule目录下

8.repository:包代码存放的地方,可以是git或者svn

9.keywords:关键字

10.scripts:脚本说明对象。它主要被包管理器用来安装、编译、测试和卸载包,示例如下:


"scripts":{

  “install”:"install.js",

  "test":"test.js"

}
Copier après la connexion

11.main:模块引入方法require()在引入包时,会优先检查这个字段,并将其作为包中其余模块的入口,如果该字段不存在,则node会检查目录下的index.js,index.node,index.json作为默认入口。

12.devDependencies:一些模块只在开发时需要依赖,配置这个属性,可以提示包的后续开发者安装依赖包

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal