chapter4 npm

在前文中,我们学习了使用node运行了简单的脚本与服务器,但在实际的开发中,我们一般不会用到原生的模块,而是使用第三方封装的模块来进行开发,本文学习npm与node开发的集成与其常用操作

nodejs集成npm

在前文,我们已经提及过Npm了,在这里的使用则是集成node来安装不同的模块来进行引入开发:
npm安装模块的语法如下:

npm install 包名//在项目中安装
npm install -g 包名//全局安装,这里的-g是指global(全局)

如安装express,这是node.js全栈开发中使用最多的包:

npm install express
//如果你已经之前安装过了,请更新到最新的发行版
npm update express

在安装后,相对路径下会产生一个node_moudule的文件夹,里面存在着我们所下载的包,因此我们可以直接在代码中引入该模块:

var express=require('express')

可以看到,npm可以更加方便的管理依赖,便于后续的开发。

npm常用操作

下面是一些npm的常用操作:

清理嵌套依赖

npm dedupe

将项目链接到全局

npm link

查看/设置/删除 npm 配置项

npm config get/set/delete

清理npm缓存

npm  cache clean --force

查看当前所有npm配置

npm config list

模块安装

npm install 包名

模块删除

npm uninstall 包名

模块更新

npm update 包名

查看项目依赖

npm list

package.json初始化

使用init来进行packagejson的初始化,用于配置一系列开发/生产环境的依赖以及信息:

npm init

模块发布npm相关

一般用于发布模块到npm市场时,这样可以让你的本地模块也可以被npm install到
初始化:生成package.json

npm init

注册npm资源库用户

 npm adduser

当你已经注册过后,则可以直接login:

npm login

发布你的模块到npm:

npm pubilish

有时候需要在安装后配置一些链接等操作的相关的钩子函数,可以通过编写脚本并在package.json进行注册配置,假设我们有一个tui(终端用户界面)工具安装后需要注册到全局环境中,那么可以在package.json中配置一行postinstall命令,这个命令是一个安装钩子,会在执行npm install后触发:
示例package.json:

{
  "name": "test",
  "version": "1.0.0",
  "main": "a.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "postinstall":"npm link"
  },

  "author": "",

  "license": "ISC",

  "description": ""

}

这样,在npm安装会自动运行npm link命令,将工具注册到全局中

其余操作补充

查看当前登录用户

npm whoami

查看包信息

npm info

搜索包(不常用)

npm search

打包模块为tar.gz

npm pack
posted @ 2025-07-30 23:07  fhyxz1  阅读(4)  评论(0)    收藏  举报