Wang's blog Wang's blog
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Wang Mings

跟随大神,成为大神!
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • git命令使用
  • nodejs如何同时支持import和require
  • nodejs使用说明
    • npm账号注册
    • nodejs安装
    • npm下载问题
    • nvm工具使用
    • nrm命令使用
    • yarn命令使用
      • yarn说明
      • 安装yarn命令
      • yarn和npm区别
      • npm存在的一些不足:
      • Yarn的优点:
      • npm 与 yarn 常用命令对比
    • npm命令使用
    • npm发布包说明
      • 发布包报错
      • 发布包说明
      • 查看发布包
    • npm打包可执行文件.exe
  • Electron跨平台开发笔记
  • JavaScript笔记
  • 常用的ES5和ES6中对象的导出和导入的差异之处
  • theme-vdoing-blog博客静态编译问题
  • 笔记
wangmings
2022-07-19
目录

nodejs使用说明

# nodejs使用说明

# npm账号注册

Npmjs官网注册:https://npmjs.com 运行: npm adduse 登录: npm login

  • npm 账号:
用户名: wang-520s 邮箱: 1139009490@qq.com 
用户名: imac-520s 邮箱: 450020530@qq.com
密码: qwm... 
1
2
3

# nodejs安装

注意: 推荐使用安装工具进行安装nodejs、不推荐使用官网直接下载安装:npm有权限问题 解决办法使用nvm工具 (opens new window)安装nodejs、nvm地址: https://github.com/nvm-sh/nvm/blob/master/README.md

# npm下载问题

  • npm无法下载: dns污染造成、通过查找IP添加hosts解决!
  • 通过站长之家 (opens new window)网络测试获取IP地址写入hosts文件就能解决
  • hosts写入例如:104.16.26.35 registry.npmjs.org
  • 站长之家: https://ping.chinaz.com/registry.npmjs.org

# nvm工具使用

nvm是一个nodejs版本管理工具, 我们可以通过它来对nodejs的版本进行切换


# 配置
# nvm代理地址
export NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node
# nodejs包管理工具nvm
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion



# 常用命令:
nvm list                    # 查看本地安装的所有nodejs版本;
nvm install 8.17.0          # 安装指定版本;
nvm use 8.17.0              # 临时切换到指定版本;
nvm uninstall 8.17.0        # 卸载指定版本;
nvm current                 # 显示当前版本;
nvm alias default 16.13.0   # 永久切换到指定版本;
nvm ls                      # 列出所有版本
nvm current                 # 显示当前版本
nvm alias                   # 给不同的版本号添加别名
nvm unalias                 # 删除已定义的别名
nvm ls-remote               # 列出远程服务器上所有的可用版本
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

# nrm命令使用

使用nrm工具、安装: nrm工具: npm i nrm -g

测速npm下载源:  nrm test
查看npm下载源:  nrm ls
切换npm下载源:  nrm use npm
1
2
3

# yarn命令使用

# yarn说明

yarn是npm升级版: 同为包管理工具 npm和yarn的区别

  1. 并行安装:yarn安装包会同时执行多个任务, npm 需等待上一个任务安装完成才能运行下一个任务
  2. 离线模式:如果你已经安装过一个包, 用 yarn 再次安装会从缓存中获取, 而 npm 会从网络下载
  3. 版本锁定:yarn 默认有一个 yarn.lock 文件锁定版本, 保证环境统一, 而 npm 默认从网络下载最新的最稳定的, 版本锁定可以解决包之间版本不兼容问题, npm 也可以通过命令实现版本锁定
  4. 更简洁的输出:yarn 安装包时输出的信息较少, npm 输出信息冗余

# 安装yarn命令

# 安装yarn
npm install -g yarn
yarn --version
1
2
3

# yarn和npm区别

# npm存在的一些不足:

  1. npm install 下载速度慢, 即使是重新 install 时速度依旧慢
  2. 同一个项目, 安装的无法保持一致性。原因是因为 package.json 文件中版本号的特点导致在安装的时候代表不同的含义。
  3. 使用 npm 安装多个 js 包时, 包会在同一时间下载和安装。安装过程中, 其中一个包抛出了一个异常, 但 npm 会继续安装其他包, 所以错误信息就会在一大堆提示信息中丢失掉, 以至于直到执行前, 都不会发现实际发生的错误。

# Yarn的优点:

  1. 安装速度快 (服务器速度快 , 并且是并行下载)
  2. 版本锁定, 安装版本统一
  3. 缓存机制, 如果之前已经安装过一个软件包, 用Yarn再次安装时之间从缓存中获取, 就不用像npm那样再从网络下载了
  4. 输出简洁并且多注册来源处理。安装包时, 直观地打印出必要的信息;不管包被不同的库间接关联引用多少次, 只会从一个注册来源去装, 防止出现混乱不一致。

# npm 与 yarn 常用命令对比

说明 npm yarn
安装依赖 npm install yarn
安装调试包 npm install 模块名 -save-dev yarn add 模块名 --dev
安装包 npm install 模块名 -save yarn add 模块名
调试 npm run save yarn save
编译 npm run build yarn build
卸载 npm uninstall vue yarn remove vue
全局卸载 npm uninstall -g vue yarn global remove vue
升级 npm update vue yarn upgrade vue

# npm命令使用

区别是:dependencies 程序正常运行需要的包。devDependencies 是开发需要的包, 比如 一些单元测试的包之类的。

一个node package有两种依赖, 一种是dependencies一种是devDependencies, 其中前者依赖的项该是正常运行该包时所需要的依赖项, 而后者则是开发的时候需要的依赖项, 像一些进行单元测试之类的包。

# 指定安装package.json文件中项目依赖
npm install --dependencies
npm install --devDependencies

# 直接安装package.json文件中项目依赖
npm install 
yarn install

# npm更新包
npm update <package_name>

# npm查看全局安装的模块
npm list -g

# npm发布包
npm publish

# npm删除发布的包
npm unpublish <package_name> --force

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

# npm发布包说明

# 发布包报错

npm发布包报错解决办法: 错误提示: npm ERR! code E403 说明: 自己模块名和别人模块名重名了、需要修改 错误提示: npm ERR! code E400 说明: 定义模块名必须是小写字母

# 发布包说明

项目的包需要提前打包好, 设置好package.json的内容 每次发包version的版本号要比上个版本高

# 查看发布包

查看包: https://www.npmjs.com/~username 搜索包: https://www.npmjs.com/search?...

# npm打包可执行文件.exe

官方网站: https://www.npmjs.com/package/pkg 无需安装 Node.js 和 npm 即可运行打包的应用程序

# 安装pkg打包工具
npm install -g pkg

# 打包的平台: node16是根据你安装的node版本
# node16-linux-x64, node16-macos-x64, node16-win-x64

# 为特定目标机器生成可执行文件
pkg -t node14-win-arm64 index.js 

# 使用 GZip 减少打包在可执行文件中的数据的大小
# 同时打包成Mac、win、linux、平台的可执行文件
pkg --compress GZip index.js

# 指定你需要打包的平台后通过GZip进行代码压缩减小体积
pkg -t node16-macos-x64 --compress  GZip index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
编辑 (opens new window)
nodejs如何同时支持import和require
Electron跨平台开发笔记

← nodejs如何同时支持import和require Electron跨平台开发笔记→

最近更新
01
theme-vdoing-blog博客静态编译问题
09-16
02
搜索引擎
07-19
03
友情链接
07-19
更多文章>
Theme by Vdoing | Copyright © 2019-2022 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式