npm包管理器

一、什么是npm

Npm(Node Package Manager)是一个用于管理和共享JavaScript代码包的包管理器。它是Node.js的默认包管理工具,也是世界上最大的软件注册表之一。下面从不同的角度来详细介绍Npm包管理器。

1. 功能与用途:

  • 包安装与管理:Npm允许用户通过命令行安装、更新和卸载已发布的包。只需简单的一行命令,就可以轻松获取所需的依赖包。
  • 依赖管理:在Node.js项目中,有很多第三方包是互相依赖的。Npm可以自动解析并管理这些依赖关系,确保项目能够正确运行。
  • 版本管理:Npm支持语义化版本规范(Semantic Versioning),可以通过范围操作符来指定所需的包版本。这使得开发者可以灵活地选择适合项目的版本,同时保持向后兼容性。
  • 脚本执行:Npm允许在项目的package.json文件中定义各种脚本命令,用于简化开发过程中的常见任务,如构建、测试、部署等。

2. 下载和安装

我们在安装node的时候,其实也一起安装了npm,可以使用

npm -v

来查看当前的npm版本
在这里插入图片描述

二、npm 的常用命令介绍

我们使用

npm --help

npm为我们提供了哪些可以使用的命令
在这里插入图片描述
如上图、两个红色框中的都是npm为我们提供的命令,这里我们就看看那些常用命令吧

npm 的一些常用命令:

1. npm init:创建一个新的 package.json 文件

在初始化一个新项目时使用。该命令会询问一些项目的配置信息,比如名称、版本、描述等。
在这里插入图片描述
在这里插入图片描述

package.json文件通常包含以下主要属性:

  1. name:项目的名称。
  2. version:项目的版本号。
  3. description:项目的描述。
  4. main:指定项目的入口文件。
  5. scripts:定义一系列的命令脚本,用于执行不同的任务,比如编译、打包、测试等。
  6. keywords:关键词,用于将项目添加到npm的搜索中。
  7. author:项目的作者。
  8. license:项目的许可证信息。
  9. dependencies:项目依赖的生产环境库。这些库会在打包发布时被包含进去。
  10. devDependencies:项目依赖的开发环境库。这些库用于开发和构建项目,不会被包含进最终的打包发布中。
  11. peerDependencies:项目所依赖的其他库的版本约束条件。
  12. browserslist:定义项目的目标浏览器列表,用于自动适配浏览器的兼容性。

除了上述属性外,package.json文件还可以包含其他自定义的属性和配置项。例如,一些前端工具(如Babel、Webpack等)会在package.json中添加特定的配置项,用于配置工具的行为和功能。

2. npm install:安装项目所需的所有依赖模块

如果 package.json 文件存在,会根据其中的依赖信息来安装相应的模块。

npm install

例如:npm install express 安装 Express 模块。
此外,从 npm 5 开始,此命令将 添加到 package.json 文件依赖。 在版本 5 之前,你需要添加标志 --save。

通常你会看到更多的标志被添加到这个命令中:

  • --save-dev 安装并添加条目到 package.json 文件开发依赖
  • --no-save 安装但不添加条目到 package.json 文件依赖
  • --save-optional 安装并添加条目到 package.json 文件可选依赖
  • --no-optional 将阻止安装可选依赖

也可以使用标志的简写形式:

  • -S:–save
  • -D:–save-dev
  • -O:–save-optional

devDependenciesdependencies 之间的区别在于前者包含开发工具,如测试库,而后者与生产中的应用打包在一起

3. npm install :安装指定的模块。

可以通过模块的名称,或者以 @ 符号指定模块的版本。

例如:npm install lodash 安装最新版本的 lodash 模块。

     `npm install lodash@4.17.20` 安装 lodash 的指定版本。

4. npm uninstall :卸载指定的模块。

例如:npm uninstall express 卸载 Express 模块。

5. npm update:更新项目依赖的模块。

会检查 package.json 文件中依赖模块的最新版本,并进行更新。

6. npm run

{
  "scripts": {
    "start-dev": "node lib/server-development",
    "start": "node lib/server-production"
  }
}

使用这个特性来运行 Webpack 是很常见的:

{
  "scripts": {
    "watch": "webpack --watch --progress --colors --config webpack.conf.js",
    "dev": "webpack --progress --colors --config webpack.conf.js",
    "prod": "NODE_ENV=production webpack -p --config webpack.conf.js"
  }
}

因此,不用输入那些很容易忘记或输入错误的长命令,你可以运行

$ npm run watch
$ npm run dev
$ npm run prod

7. npm search :搜索模块。

可以根据模块名来搜索可用的模块。

例如:npm search express 搜索名为 “express” 的模块。

8. npm outdated:检查过时的模块。

例如:npm outdated 将列出当前项目中已经过时的模块。

9. npm publish:将自己开发的模块发布到 npm 上。

例如:npm publish 发布当前项目为一个 npm 模块。

10. npm config:配置 npm 的各种选项。

例如:npm config get registry 获取配置项 registry 的值。
在这里插入图片描述

这些是 npm 的一些常用命令,可以帮助开发者更方便地管理和使用 Node.js 模块。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jieyucx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值