npm的全称是(Node Package Manager),是随同NodeJS一起安装的包管理和分发工具,它很方便让JavaScript开发者下载、安装、上传以及管理已经安装的包。
先说明下 下面会用到的几个变量:
- | 模块名
- 版本号
- 版本范围
- <@scope> 作用域。所有 npm 软件包都有一个名称。某些软件包名称也有作用域。
安装npm镜像
#1. 全局切换镜像源:
npm config set registry http://registry.npm.taobao.org
#2. 查看镜像源使用状态:
npm get registry
#3. 全局切换官方镜像源:
npm config set registry http://www.npmjs.org
#二、使用 nrm 切换镜像源
#1. 下载 nrm:
npm install -g nrm
#2. 查看可切换的镜像源:
nrm ls # (*表示正在使用的镜像源)
#3. 切换淘宝镜像源:
nrm use taobao
Error [ERR_REQUIRE_ESM]: require() of ES Module D:\npm\node_modules\nrm\node_modules\open\index.js from D:\npm\node_modules\nrm\cli.js not supported.
Instead change the require of index.js in D:\npm\node_modules\nrm\cli.js to a dynamic import() which is available in all CommonJS modules.
at Object. (D:\npm\node_modules\nrm\cli.js:9:14) {
code: 'ERR_REQUIRE_ESM'
}
原因:应该使用 open 的 CommonJs规范的包 ,现在 open v9.0.0 是 ES Module 版本的包
解决方法:npm install -g nrm open@8.4.2 --save
Node安装模块
npm install xxx 利用 npm 安装xxx模块到当前命令行所在目录
npm install -g xxx 利用npm安装全局模块xxx
本地安装时将模块写入package.json中:
npm install xxx 安装但不写入package.json
npm install xxx –-save/-S 安装并写入package.json的”dependencies”中
npm install xxx -–save-dev/-D 安装并写入package.json的”devDependencies”中
Node删除模块
npm uninstall xxx 删除xxx模块
npm uninstall -g xxx 删除全局模块xxx
查看全局的包的安装路径
npm root -g
查看npm安装的版本
npm -v
更新node模块
npm update moduleName
项目初始化
会引导你创建一个package.json文件,包括名称、版本、作者这些信息等
- 一直回车就行
npm init
安装包卡住时
ctrl + c -> npm uninstall 包名
-> npm cache clean --force 清除缓存
->换4g网络 -> npm install 包名
查看当前包的安装路径
npm root
查看node模块的package.json文件夹
npm view moduleNames
注意事项:如果想要查看package.json文件夹下某个标签的内容,可以使用$npm view moduleName labelName
查看当前目录下已安装的node包
npm list:parseable=true可以目录的形式来展现当前安装的所有node包
- 注意事项:Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容。$ npm list
查看帮助命令
npm help
查看包的依赖关系
npm view moudleName dependencies
查看包的源文件地址
npm view moduleName repository.url
查看包所依赖的Node的版本
npm view moduleName engines
查看npm使用的所有文件夹
npm help folders
用于更改包内容后进行重建
npm rebuild moduleName
检查包是否已经过时
此命令会列出所有已经过时的包,可以及时进行包的更新
npm outdated
访问npm的json文件夹
一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。访问npm的json文件夹的方法如下
此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打开。
npm help json
检验某个包名是否已存在
发布一个npm包的时候,需要检验某个包名是否已存在
npm search packageName
创建与发布
我们可以将自己开发的工具包发布到 npm 服务上,方便自己和其他开发者使用,
操作步骤如下:
-
创建文件夹,并创建文件
index.js, 在文件中声明函数,使用module.exports暴露 -
npm初始化工具包,package.json填写包的信息 (包的名字是唯一的) -
注册账号
https://www.npmjs.com/signup -
激活账号 ( 一定要激活账号 !!!)
-
修改为官方的官方镜像 (命令行中运行
nrm use npm) -
命令行下
npm login填写相关用户信息 -
命令行下
npm publish提交包 👌
5.2 更新包 后续可以对自己发布的包进行更新,
操作步骤如下
-
更新包中的代码
-
测试代码是否可用
-
修改
package.json中的版本号 -
发布更新
npm publish
5.3 删除包
执行如下命令 npm unpublish --force
删除包
删除包需要满足一定的条件,docs.npmjs.com/policies/un…
你是包的作者
发布小于 24 小时
大于 24 小时后,没有其他包依赖,并且每周小于 300 下载量,并且只有一个维护者