【全网最实用】npm常用命令详解与实践

目录

1.npm简介

2.npm常用命令详解

2.1初始化项目npm init

2.2安装依赖 npm install

2.2.1 安装指定包

2.2.2全局安装指定包

2.2.3作为开发依赖安装

2.3更新依赖npm update

2.3.1更新所有依赖

2.3.2更新特定依赖

2.4卸载依赖(移除包)npm uninstall

2.5查看依赖树npm list

2.6查看指定包的版本npm view

2.7运行脚本npm run

2.8缓存清理npm cache clean

2.9检查安全漏洞npm audit

2.10发布包npm publish

3.项目实战

3.1初始化项目

3.2安装依赖

3.3使用安装完的依赖

3.4添加脚本,启动应用

3.5运行测试

3.6安全检查

3.7更新依赖


1.npm简介

npm 是Node.js 的默认包管理器,用于发布、安装和管理JavaScript包(modules)。,它允许开发者轻松地共享和复用代码,使得项目的构建和维护变得更加高效。

2.npm常用命令详解

2.1初始化项目npm init

npm init 命令用于在当前目录中初始化一个新的 Node.js 项目,并创建一个 package.json 文件。这个文件是项目的配置文件,包含了项目的名称、版本、作者、依赖等重要信息。

实践案例:

假设我们要创建一个名为 mytestproject 的项目。在终端中进入到目标文件夹,

        以管理员身份进入cmd, 

        进入到需要创建项目的目录,cd /d 项目路径

        mkdir myproject

       cd mytestproject

        然后输入 npm init 。

系统会提示您输入一系列的项目信息,如项目名称、版本、描述等。

如果您不想逐一输入,你也可以使用-y选项快速创建一个默认的package.json文件:

npm init -y

2.2安装依赖 npm install

2.2.1 安装指定包

用于安装项目依赖,并将其记录在package.json文件中。

npm install <package_name>

实践:如果我们想要在项目中使用 axios 这个 HTTP 请求库,输入如下代码

 npm install axios

npm 就会自动下载并安装 axios 及其相关的依赖。

2.2.2全局安装指定包

如果你想在全局范围内安装一个包,可以使用-g--global标志。

npm install -g <package_name>

例如,全局安装Express框架:

npm install -g express

2.2.3作为开发依赖安装

安装指定的包,并将其添加到 package.json 文件的 devDependencies 部分,通常这些包仅用于开发环境,比如测试框架、构建工具等。 你可以使用--save-dev-D标志。

npm install --save-dev <package_name>

比如,安装 jest 这个测试框架时,可以使用 

npm install jest --save-dev 

2.3更新依赖npm update

npm update 命令用于更新项目中已安装的包到最新的可用版本。它可以更新所有依赖包,也可以指定更新某个特定的包。

2.3.1更新所有依赖

npm update

2.3.2更新特定依赖

npm update <package_name>

实践操作注意:
在项目目录中执行 npm update ,npm 会检查每个已安装的包是否有新的版本可用,并进行更新。但需要注意的是,这可能会导致一些不兼容的更改,所以在更新之前最好查看相关包的更新日志,或尽量使用npm update <package_name>

2.4卸载依赖(移除包)npm uninstall

npm uninstall 命令用于从项目中移除依赖包。它会从package.json文件中删除指定的包,并卸载它。

npm uninstall <package_name>

例如,如果项目不再需要 moment 这个日期处理库,可以输入 npm uninstall moment 来将其移除,并同时会从 package.json 文件中删除相关的依赖配置。

如果你想同时移除全局包和本地包,可以使用--save标志。

npm uninstall --save <package_name>

2.5查看依赖树npm list

npm list 命令用于列出当前项目中安装的包及其依赖关系。

npm list

如果你想查看全局安装的包列表,可以使用--global标志。

npm list --global

2.6查看指定包的版本npm view

npm view 命令用于查看指定包的详细信息,包括版本、依赖、描述等。

npm view <package_name>

2.7运行脚本npm run

npm run 用于执行在 package.json 文件中定义的脚本命令。

npm run <script-name>

在 package.json 的 scripts 字段中,我们可以自定义各种脚本,例如:

"scripts": {
  "start": "node server.js",
  "build": "webpack",
  "test": "jest"
}

然后通过 npm run start 来启动服务器,npm run build 来执行构建操作,npm run test 来运行测试。

实践场景:
假设我们有一个使用 Webpack 进行构建的项目,定义了 build 脚本为 webpack 。在开发过程中,每次需要构建项目时,只需输入 npm run build ,Webpack 就会按照配置文件进行打包操作。

2.8缓存清理npm cache clean

有时候,缓存可能会导致一些奇怪的问题,通过清除缓存可以解决一些安装或更新包时的异常情况。

npm cache clean --force

2.9检查安全漏洞npm audit

npm audit用于检查项目依赖中的安全漏洞。

npm audit

2.10发布包npm publish

npm publish 命令用于将你的包发布到npm仓库。

npm publish

3.项目实战

为了更好地理解npm的常用命令,通过一个案例来展示如何创建和管理一个npm项目。

3.1初始化项目

首先,我们创建一个新的项目目录并初始化npm项目:

mkdir my-npm-project
cd my-npm-project
npm init -y

这里我们选择了生成一个默认的package.json文件。

3.2安装依赖

接下来,我们安装一些常用的依赖包。假设我们要使用Lodash和Express:

npm install lodash express

还可以安装一些开发依赖,比如Jest用于测试:

npm install jest --save-dev

3.3使用安装完的依赖

创建一个新的JavaScript文件,使用我们安装的Lodash和Express包:

// index.js
const _ = require('lodash');
const express = require('express');
const app = express();
 
app.get('/', (req, res) => {
  const message = _.join(['Hello', 'world'], ' ');
  res.send(message);
});
 
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});

3.4添加脚本,启动应用

我们可以在package.json中添加一个脚本来启动我们的应用:

{
  "scripts": {
    "start": "node index.js"
  }
}

现在,可以使用以下命令启动服务器:

npm run start

3.5运行测试

创建一个简单的测试文件来测试我们的代码:

// index.test.js
test('adds 1 + 2 to equal 3', () => {
  expect(1 + 2).toBe(3);
});

然后,我们在package.json中添加一个测试脚本:

npm test

3.6安全检查

在项目开发过程中,我们可以定期使用npm audit检查依赖中的安全漏洞:

npm audit

如果发现漏洞,可以使用以下命令自动修复:

npm audit fix

3.7更新依赖

在项目开发的不同阶段,我们可能需要更新依赖包。

 注意尽量不要使用npm update,这个会更新全部依赖,可能会造成不兼容的情况,而是使用更新指定依赖

npm install <package>

如果需要将某个包更新到最新版本,可以使用:

npm install <package>@latest

例如

npm install lodash@latest

通过本文的介绍和实践案例,能帮助开发者详细了解npm的常用命令及其在实际项目中的应用。掌握这些命令可以更高效地管理项目依赖、提升开发效率、确保项目安全性。

如果觉得有用,点个收藏点个赞吧。

  • 32
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

金渔金渔

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

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

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

打赏作者

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

抵扣说明:

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

余额充值