Mac 安装Nodejs及NPM常见问题

2024-06-04 4303阅读

环境: Mac

工具:

NPM 可通过官网查询一些模块相关

NPM Doc 通过官网文档了解更多的关于NPM的使用

安装


NPM是Node.js的包管理工具,可用于解决 Node.js在代码部署上的问题。

新版本的Node.js已经集成了NPM, 因此可通过下载 Node.js 来使用 NPM。

安装方式1:

使用安装包,进行安装,会自动配置nodejs和npm的环境变量

Node.js 下载地址

Node.js 历史版本下载地址

下载成功后, 打开终端运行命令,检测版本是否运行成功:

// 检测node.js
node -v
// 检测npm 
npm -v
  1. 使用Homebrew安装,命令:
brew install node

卸载


  1. 打开终端,输入命令查看Node.js安装路径:
which node

执行该命令后,会显示安装路径:/usr/local/bin/node


2. 输入以下命令删除 Node.js 相关的文件

sudo rm -rf /usr/local/bin/npm\
sudo rm -rf /usr/local/share/man/man1/node.1\
sudo rm -rf /usr/local/lib/dtrace/node.d\
sudo rm -rf \~/.npm\
sudo rm -rf \~/.node-gyp\
sudo rm /usr/local/bin/node

该命令会删除 Node.js 的可执行文件、npm 包管理器、手册页、DTrace 跟踪文件和用户目录下相关文件。

NPM常用命令


  1. 更新NPM, 主要用于能够获取最新的软件包相关
npm install npm -g
  1. 卸载NPM
npm uninstall npm -g
  1. 安装指定模块
// 安装增加 -g 命令,表示全局安装,安装包在 /usr/local 目录下的 ./node_modules中
// 没有使用-g 命令,会将安装包默认安装命令运行的所在目录的 ./node_modules中
// 安装某个模块前,都会生成 node_modules 目录
npm install ModleName
npm install ModelName -g
  1. 查看已安装的模块列表
npm list
npm list -g
/*
/usr/local/lib
├── corepack@0.17.0
├── express@4.18.2
├── i@0.3.7
├── npm@9.5.1
├── typescript@5.1.6
└── yarn@1.22.19
*/
  1. 查看已安装的模块
npm list yarn -g
/*
/usr/local/lib
└── yarn@1.22.19
*/
  1. 更新已安装的模块
npm update yarn -g
  1. 搜索模块
npm search ModelName
npm search ModelName -g
  1. 帮助相关
npm help

NPM常用模块推荐


  • yarn 用于缓存下载的每个包,使用用法:
    // 全局安装yarn模块
    npm install yarn -g 
    // 通过yarn模块添加md5
    yarn add md5
    

    常见问题汇总

    安装某个模块提示权限不足问题

    Mac 安装Nodejs及NPM常见问题 第1张

    问题原因: 权限不足,

    解决方案: 运行命令时,增加sudo即可

    示例:

    sudo npm install ModelName -g
    sudo npm update yarn -g
    

    安装某个模块很慢的问题

    问题原因: npm install 默认使用的安装镜像为国外镜像,因此会受网络限制.

    解决方案: 替换镜像为国内, 运行终端命令

    npm config set registry https://registry.npm.taobao.org
    

    淘宝镜像过期

    npm ERR! code CERT_HAS_EXPIRED
    npm ERR! errno CERT_HAS_EXPIRED
    npm ERR! request to https://registry.npm.taobao.org/npm failed, reason: certificate has expired
    

    原因在于,2022年5月31号,npm 淘宝镜像已经从 registry.npm.taobao.org 切换到了 registry.npmmirror.com, 因此需要修改镜像

    // 查看当前npm镜像设置
    npm config list
    // 清空缓存
    npm cache clean --force
    // 修改镜像
    npm config set registry https://registry.npmmirror.com
    // 再次运行 npm config list 查看镜像修改
    

    yarn安装证书验证失败问题

    上面的镜像过期,也可能引起该问题,类似错误:

    warning package.json: No license field
    [1/4] 🔍  Resolving packages...
    error Error: certificate has expired
        at TLSSocket.onConnectSecure (node:_tls_wrap:1674:34)
        at TLSSocket.emit (node:events:518:28)
        at TLSSocket._finishInit (node:_tls_wrap:1085:8)
        at ssl.onhandshakedone (node:_tls_wrap:871:12)
    info Visit https://yarnpkg.com/en/docs/cli/create f
    

    临时解决方法,终端输入命令,用于跳过HTTPS验证:

    yarn config set "strict-ssl" false -g
    

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]