nodejs的安装使用

一、nodejs介绍

  • Node.js 就是运行在服务端的 JavaScript。

  • Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。

  • Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

  • 为什么要安装Node.js呢,下面用到的Grunt 工具是基于Node.js 使用的

  • 下载地址:https://nodejs.org/en/download/releases/

    • 选择版本下载, 一直下一步确定即可,安装后进入命令行中 输入 :

    • node -v  # 显示版本号即安装成功
      

二、安装node

  • 安装 Node.js 的时候,npm 也会一起被安装(node和npm的执行文件都在node安装目录的bin目录下)。

  • npm(node package manager):nodejs的包管理器,用于node插件管理(包括安装、卸载、管理依赖等)

  • 这里介绍centos系统安装和nodejs的方法

    • 1. nodejs和npm可以通过EPEL存储库安装,所以要启用EPEL存储库
      yum install epel-release
      
      2. 安装nodejs
      yum install nodejs 
      node -v  # 显示版本号即nodejs安装成功
      
      3. 安装npm
      yum install npm 
      npm -v  # 显示版本号即npm安装成功
      
      # 上面的安装只会安装最新版的nodejs************************
      # 想要安装指定版本的nodejs,可以使用weget命令在https://nodejs.org/en/download/releases/网站上选择指定版本下载,然后解压,配置环境变量,例如:
      1. 切换到想要安装的目录下
      cd /opt/project
      2. 下载nodejs
      wget https://nodejs.org/download/release/v14.1.0/node-v14.1.0-linux-x64.tar.gz
      3. 解压
      tar -zxvf node-v14.6.0-linux-x64.tar.gz
      4. 重命名解压目录
      mv node-v14.6.0-linux-x64 nodejs
      5. 配置环境变量
      vim /etc/profile  # 在最下行加入下面的内容
      
      #node
      NODE_HOME=/opt/project/nodejs
      export PATH=$NODE_HOME/bin:$PATH
      
      6. 重新加载环境变量
      source /etc/profile
      
      7. 查看是否成功
      node -v  # 显示版本号即nodejs安装成功
      npm -v  # 显示版本号即npm安装成功
      
npm get registry  # 查看npm镜像地址,输出默认npm源:https://registry.npmjs.org/

三、npm换源

#切换淘宝源
npm config set registry https://registry.npmmirror.com
#查看是否成功
npm config get registry
#或者
npm get registry
#可以看到输出 https://registry.npmmirror.com

这里还提供了一些其他npm的源
npm 官方原始镜像网址是:https://registry.npmjs.org/
淘宝最新 NPM 镜像:https://registry.npmmirror.com  # https://registry.npm.taobao.org/ 已经过期
阿里云 NPM 镜像:https://npm.aliyun.com
腾讯云 NPM 镜像:https://mirrors.cloud.tencent.com/npm/
华为云 NPM 镜像:https://mirrors.huaweicloud.com/repository/npm/
网易 NPM 镜像:https://mirrors.163.com/npm/
中科院大学开源镜像站:http://mirrors.ustc.edu.cn/
清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/
腾讯,华为,阿里的镜像站基本上比较全

四、安装cnpm

  • 因为npm安装插件是从国外服务器下载,受网络的影响比较大,可能会出现异常,如果npm的服务器在中国就好了,所以我们乐于分享的淘宝团队干了这事。来自官网:“这是一个完整npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。”
# -g 参数是将模块安装到全局,具体安装到磁盘哪个位置,要看npm config prefix的位置
npm install -g cnpm --registry=https://registry.npm.taobao.org
#查看是否安装成功
cnpm -v
#成功后可以使用cnpm代替npm命令

五、改变原有的环境变量

5.1 配置组件和缓存目录

  • 配置npm的全局模块的存放路径、cache的路径
npm config set prefix "路径"
npm config set cache "路径"

# 如: 找到安装目录,在安装目录下新建两个文件夹node_global和node_cache,然后使用管理员身份打开cmd命令窗口;输入下面两行运行;运行后无报错就是成功。

# 其中node_global用于存放下载的组件,而node_cache用于做缓存

npm config set prefix "你的安装路径\node_global"
npm config set cache "你的安装路径\node_cache"

5.2 配置环境变量

# “你的安装目录” 一般就叫 nodejs
1. 在【系统变量】中点击【新建】;变量名:NODE_PATH ;变量值
你的安装目录\node_global\node_modules

2. 把node根目录和全局组件目录添加到【环境变量】path中 
你的安装目录
你的安装目录\node_global
  • 第1步如下图

  • 第2步如下图

六、npm命令

6.1 npm相关命令

1. 设置npm路径    
#全局安装路径
npm config set prefix "D:\Program Files\nodejs\node_global"
#缓存路径
npm config set cache "D:\Program Files\nodejs\node_cache"
    
2. 设置镜像   
#淘宝镜像源
npm config set registry https://registry.npmmirror.com
#腾讯云镜像源
npm config set registry http://mirrors.cloud.tencent.com/npm/
#华为云镜像源
npm config set registry https://mirrors.huaweicloud.com/repository/npm/
# 官方默认全局镜像源
npm config set registry https://registry.npmjs.org
#查看当前镜像源
npm config get registry

3. 常用命令简写说明
-g: #--global 的缩写,表示安装到全局目录里
-S: #--save 的缩写,表示安装的包将写入package.json里面的dependencies
-D: #--save-dev 的缩写,表示将安装的包将写入packege.json里面的devDependencies
 i: #install的缩写,表示安装

4. 安装包    
npm init  # npm 初始化当前目录
npm i   # 安装所有依赖(在npm中,每个项目都有一个package.json文件,里面是该项目的元数据和依赖信息,当我们在该项目的package.json同目录下,运行npm install 命令时,npm会帮我们安装其所需要的所有依赖)
npm install   # 安装所有依赖
npm i express  # 安装模块到默认dependencies
# 安装指定版本和临时源
npm install -g express@2.5.8 --registry=https://registry.npmmirror.com

npm i express -g  # 会安装到配置的全局目录下
npm i express -S  # 安装包信息将加入到dependencies生产依赖
npm i express -D  # 安装包信息将加入到devDependencies开发依赖

5. 卸载包
npm uninstall express  # 卸载模块,但不卸载模块留在package.json中的对应信息
npm uninstall express -g  # 卸载全局模块
npm uninstall express --save  # 卸载模块,同时卸载留在package.json中dependencies下的信息
npm uninstall express --save-dev  # 卸载模块,同时卸载留在package.json中devDependencies下的信息

6. 更新包
npm update express  # 更新最新版本的express
npm update express@2.1.0  # 更新到指定版本号的express
npm update express@latest  # 更新到最后的新版本

7. 查看命令
npm -v   #查看版本号
npm root  # 查看项目中模块所在的目录
npm root -g  # 查看全局安装的模块所在目录
npm list 或者 npm ls  # 查看本地已安装模块的清单列表
npm view express dependencies  # 查看某个包对于各种包的依赖关系
npm view express version  # 查看express最新的版本号
npm view express versions  # 查看所有express历史版本号(很实用)
npm view express  # 查看最新的express版本的信息
npm info express  # 查看express的详细信息,等同于上面的npm view express
npm list express 或 npm ls express  # 查看本地已安装的express的详细信息
npm view express repository.url  # 查看express包的来源地址

8. 其他命令
npm cache clean  # 清除npm的缓存
npm prune  # 清除项目中没有被使用的包
npm outdated  # 检查模块是否已经过时
npm repo express  # 会打开默认浏览器跳转到github中express的页面
npm docs express  # 会打开默认浏览器跳转到github中express的README.MD文件信息
npm home express  # 会打开默认浏览器跳转到github中express的主页
npm install -g npm@9.8.1 # 升级npm

9. 通过使用淘宝定制的cnpm安装
npm install -g cnpm --registry=https://registry.npmmirror.com

# 查看版本号
cnpm -v

6.2 yarn用法

1、安装yarn 
npm install -g yarn

2、安装成功后,查看版本号: 
yarn --version

3、初始化项目 
yarn init # 同npm init,执行输入信息后,会生成package.json文件
yarn的配置项: 
yarn config list # 显示所有配置项
yarn config get <key> # 显示某配置项
yarn config delete <key> # 删除某配置项
yarn config set <key> <value> [-g|--global] #设置配置项
yarn config set registry https://registry.npmmirror.com # 添加淘宝源

4、安装包: 
yarn install # 安装package.json里所有包,并将包及它的所有依赖项保存进yarn.lock
yarn install --flat # 安装一个包的单一版本
yarn install --force # 强制重新下载所有包
yarn install --production # 只安装dependencies里的包
yarn install --no-lockfile # 不读取或生成yarn.lock
yarn install --pure-lockfile # 不生成yarn.lock

5、添加包(会更新package.json和yarn.lock)
yarn add [package] #  在当前的项目中添加一个依赖包,会自动更新到package.json和yarn.lock文件中
yarn add [package]@[version] #  安装指定版本,这里指的是主要版本,如果需要精确到小版本,使用-E参数
yarn add [package]@[tag] #  安装某个tag(比如beta,next或者latest)

# 不指定依赖类型默认安装到dependencies里,你也可以指定依赖类型:
yarn add --dev/-D #  加到 devDependencies
yarn add --peer/-P #  加到 peerDependencies
yarn add --optional/-O #  加到 optionalDependencies

# 默认安装包的主要版本里的最新版本,下面两个命令可以指定版本:
# 安装包的精确版本。例如yarn add test@1.2.3会接受1.9.1版,但是yarn add test@1.2.3 --exact只会接受1.2.3版
yarn add --exact/-E 
#  安装包的次要版本里的最新版。例如yarn add foo@1.2.3 --tilde会接受1.2.9,但不接受1.3.0
yarn add --tilde/-T 

6、发布包
yarn publish

7、移除一个包 
yarn remove <packageName>:移除一个包,会自动更新package.json和yarn.lock

8、更新一个依赖 
yarn upgrade 用于更新包到基于规范范围的最新版本

9、运行脚本 
yarn run 用来执行在 package.json 中 scripts 属性下定义的脚本

10、显示某个包的信息 
yarn info <packageName> 可以用来查看某个模块的最新版本信息

11、缓存 
yarn cache 
yarn cache list # 列出已缓存的每个包 
yarn cache dir # 返回 全局缓存位置 
yarn cache clean # 清除缓存

6.2.1 npm和yarn对比

npm yarn
npm install yarn
npm install 依赖包名 --save-dev yarn add 依赖包名 --dev
npm install 依赖包名 --save yarn add 依赖包名
npm run serve yarn serve
npm run build yarn build

6.3 pnpm用法

# 安装指定版本pnpm
npm install -g pnpm@6.32.2

#安装软件包及其依赖的任何软件包 如果workspace有配置会优先从workspace安装
pnpm add <pkg>
#安装项目所有依赖
pnpm install
#更新软件包的最新版本
pnpm update
#移除项目依赖
pnpm remove
#运行脚本
pnpm run
#创建一个 package.json 文件
pnpm init
#以一个树形结构输出所有的已安装package的版本及其依赖
pnpm list

七、npm的相关问题

7.1 sill idealTree buildDeps问题

问题:npm install 时一直 sill idealTree buildDeps 或 yarn 一直 info There appears to be trouble with your network connection. Retrying...

解决方法:

一、 网上提到最多的方法 【换源】

  1. 由于项目用的源可能是某些公司内部源或者外网源,可以执行 npm config get registry 命令,把输出的源地址复制到浏览器看看是否能打开,能打开的一般能用,那就不是源的问题,否则换一个源,如:npm config set registry https://registry.npmmirror.com

  2. 项目内始终无法换源:修改.npmrc/.yarnrc里的registry,直接把文件删掉也可以

二、 node版本过高

16.0版本以上的node不行,用nvm(类似python的conda,可以在一台服务器上安装、使用各个版本的nodejs)换一个低版本就能装咯

三、 其他

卸载node重装/换一个网/删除package-lock.json和node_modules,npm cache clean --force重装试试

posted @ 2024-04-08 14:18  BigSun丶  阅读(282)  评论(0编辑  收藏  举报