node.js--npm初识
npm 安装
安装node.js 时候会自动安装npm ,所以如果安装了node.js 就不需要安装npm了,
命令行使用命令 npm -v
查看npm版本,出现版本号,则表示安装成功。
npm 初始化包
使用 npm init
命令创建一个 package.json 文件,然后使用 npm install
命令安装依赖。
如果使用命令 npm init -y
则可以跳过询问步骤,直接生成一个默认的 package.json 文件。但是记得文件夹名字一定不要包含中文和大写字母。
package.json 文件是包的配置文件,用于描述该包的信息,如名称、版本、作者、依赖等。
不可以使用中文和大写,否则会报错。文件夹的名字也最好不是中文的
版本号不可以使用字母,只可以是数字
搜索包去访问:https://www.npmjs.com/
可以在里面搜索各种工具包,然后使用,比如:轮播图工具包,就去搜轮播图
npm下载安装包
确保是联网状态,使用命令:
npm i 包名
npm i
是 npm install
的简写,安装包的时候,会自动安装到 node_modules 文件夹中,
package-look.json 包的锁定文件,用来锁定包的版本号,保证多人开发的时候,不会出现版本不一致的问题
安装包的时候,可以指定版本号,比如:
npm i 包名@版本号
这样安装的包,就一定是这个
安装好包以后,就可以在项目中使用了,使用方法:大多数使用 require 方法,比如:
const 包名 = require('包名')
require 其实找的就是 node_modules/包名/包名.js 文件
如果 node_modules 包下面没有这个文件,就会去上级目录文件下找对应的 node_modules 包,直到找到磁盘根目录为止,如果还是没找到,就会报错
npm 全局安装
npm install -g 包名
比如:
npm i -g nodemon
nodemon 这个包的作用是,每次启动 node.js 文件时候,不使用 node 文件名
这样启动,
使用 nodemon 文件名
这样启动,可以监控文件的变化,自动重启
并不是所有的工具包都适合全局安装,比如:轮播图工具包,就不适合全局安装,因为轮播图工具包,是放在页面中使用的,不是放在服务器
注意:
如果安装了 nodemon 包以后无法在 VS Code 的终端窗口使用,需要操作:
按电脑上 win 键,输入 powershell
以管理员身份打开 PowerShell
解决这个问题只需执行命令:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
然后就可以在 VS Code 的终端窗口使用 nodemon 了
全局安装的包,安装位置可以通过 npm root -g
命令查看
npm安装包所有依赖
使用 npm i
即可,不用携带任何参数,安装所有依赖。
npm 卸载包
npm uninstall 包名
npm 删除包
npm r 包名 或者 npm remove 包名
开发与生产的依赖
类型 | 命令 | 说明 |
---|---|---|
生产依赖 | npm i -S 包名 | -S等于--save,-S是默认选项,包信息保存在package.json 中dependencies 属性 |
开发依赖 | npm i -D 包名 | -D等于--save-dev,包信息保存在package.json 的devDependencies 属性 |
设置命令别名
在package.json 文件中,找到scripts字段,添加如下代码:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"server": "node ./test.js",
"start": "node ./test.js",
},
配置完以后,比如执行 npm run server
,就会去 package.json 文件中找相同命令的指令,然后执行 test.js 文件。
npm run 命令有自动向上找的特性,和 require 函数一样
start
的命令别名有点不太一样,可以忽略 run ,直接 npm start
执行。
cnpm
cnpm 是淘宝构建的npmjs.com 的镜像,使用cnpm命令可以快速安装npm上的包。
可以通过 npm 安装 cnpm
npm install -g cnpm --registry=https://registry.npmmirror.com
cnpm 和 npm 使用基本一模一样
配置淘宝镜像
方式一:直接配置
npm config set registry https://registry.npmmirror.com
方式二:工具配置 nrm
安装 nrm:npm i -g nrm
修改镜像:nrm use taobao
检测是否成功:npm config list
发布一个包
npm i
初始化,然后会有一个package.json文件,里面的配置里有个 main 配置项,注意文件名和类属性保持一致
https://www.npmjs.com/signup 注册账号,一定要激活账号,中间会给邮箱发送验证码
命令行执行 nrm use npm
修改为官方的镜像
npm login
登录账号,中间会给邮箱发送验证码
npm publish
发布
更新发布的包
- 编写完代码
- 测试好代码
- 修改package.json 版本号,在version 配置项
- 执行 npm publish 发布更新
删除发布的包
npm unpublish 包名 --force
nvm 介绍和使用
nvm 全称 node version manager,node版本管理工具,可以管理多个node版本,并且可以切换不同版本
下载安装
去 https://github.com/coreybutler/nvm-windows/releases 下载
下载 nvm-setup.exe 安装
命令 | 说明 |
---|---|
nvm list available | 查看所有可安装的node版本 |
nvm install 版本号 | 安装指定版本的node,如:nvm install 14.16.0 安装14.16.0版本的node.js |
nvm install latest | 安装最新版本的node |
nvm use 版本号 | 切换到指定版本的node,如:nvm use 14.16.0 切换到14.16.0版本的node.js |
nvm list | 查看已安装的node版本 |
nvm uninstall 版本号 | 卸载指定版本的node,如:nvm uninstall 14.16.0 卸载14.16.0版本的node.js |
nvm current | 查看当前使用的node版本 |
nvm alias 别名 版本号 | 给指定版本的node起别名 |