nvm-desktop window安装,支持动态切换nodejs版本

news2024/12/23 4:14:50

一、安装 nvm-desktop

概述

1 、卸载干净笔记的nodejs 和nodejs的环境变量
2、安装 nvm-desktop 软件
3、配置环境变量
4、测试功能
# 此时已安装完成
其他:常见nodejs的问题解决

参考:官网 mac 安装教程

https://github.com/1111mp/nvm-desktop/blob/main/README-zh_CN.md#下载

1、卸载干净笔记的nodejs

1、卸载nodejs 软件
2、删除电脑下载的npm 和 C:\Users\用户 下的 nodejs 相关的文件
3、删除 电脑环境变量的 NODE_HOME 或 NODE_PATH 的 ,删除 环境变量 “Path” 与 nodejs 相关
4、用电脑软件清理一下注册表并重启电脑(mac 教程写的需要)

2 、安装 nvm-desktop window

1)下载

访问地址 :https://github.com/1111mp/nvm-desktop/releases
下载window x64版本 (当前3.3 - 2024-06-26, 网上说不要低于 2.6)
在这里插入图片描述

2)安装

在这里插入图片描述
选择安装位置,并点击安装
在这里插入图片描述
点击完成,此时先不要对软件任何操作,配置完环境变量再操作
在这里插入图片描述

3 配置环境变量

安装后 c 盘 用户下会存在 .nvmd 文件夹 ,且下面的bin文件夹会存在 npm.exe
在这里插入图片描述

1)配置变量

新增 NVMD_DIR ,配置 Path 添加 node

NVMD_DIR= C:\Users\你电脑的用户\.nvmd
Path 添加 %NVMD_DIR%\bin

在这里插入图片描述
在这里插入图片描述

2)配置nodejs 缓存路径

先用nvm-desktop 安装一个默认的nodejs,再配置nodejs 缓存路径

1、先设置nvm-desktop 默认 nodejs下载路径

点击软件右上角的设置按钮,展开如下图,可设置nodejs安装路径
在这里插入图片描述

2、用nvm-desktop 安装最新的稳定版nodejs

在这里插入图片描述

3 、设置当前为默认版本

如下图,点击更多中应用
在这里插入图片描述

4 、查看当前系统默认的nodejs 版本
# 此时运行 cmd 运行,可查看系统的默认版本
node -v
npm -v

在这里插入图片描述

5、设置缓存路径

在安装nvm-desktop 的文件夹下 新建文件夹 node_global 和 node_cache ,然后运行命令(根据安装路径调整)

npm config set prefix "D:\Program Files\nvm-desktop\node_global"
npm config set cache "D:\Program Files\nvm-desktop\node_cache"

在这里插入图片描述

4 测试

用切换nvm-desktop18版本,再查看版本
在这里插入图片描述
可发现系统用默认 nodejs 版本已经切换了
在这里插入图片描述

此时已安装完成

二、其他可选配置

1、切换阿里镜像源,并设置忽略镜像源证书过期

# cmd 运行
npm config set registry https://registry.npmmirror.com/
# 查看镜像是否切换
npm config get registry 

# 执行下面两个命令再进行npm install即可
npm cache clean --force
npm config set strict-ssl false

npm cache clean --force
这个命令用于清除 npm 的缓存。npm 在安装包时会将下载的包缓存到本地,以便下次使用时可以直接从缓存中获取,加快安装速度。使用 npm cache clean 可以清除缓存,而 --force 参数表示强制清除缓存,即使有其他进程正在使用缓存。

npm config set strict-ssl false

用于配置 npm 的 SSL 严格模式。默认情况下,npm 在下载包时会验证 SSL 证书的有效性,以确保安全性。通过设置 strict-ssl 为 false,可以禁用 SSL 严格模式,允许使用自签名或无效的 SSL 证书进行下载,此方法就会忽略淘宝证书过期

三、开发中常见遇到版本问题

1 、低版本node,npm install 时,点击报错日志文件 registry.nlark.com 不可用

替换 在 package-lock.json
registry.nlark.com 为
registry.npmmirror.com

2、node-sass问题

老项目用的 node-sass
方案一:
安装 node-sass 编译环境

需要执行:npm install --global --production windows-build-tools
安装 winodws sdk 开发工具和python 环境
可能执行失败,网上有手动下载2019版 windows-build-tools.exe 开发工具,这里不做详细介绍

方案二:
更新 node-sass 为 sass

将带 package.json 中 依赖的 sass名都删除
更换成:"sass": "1.32.13",
    "sass-loader": "10.1.1",
更换 vue的版本为,并设置当前为默认环境
v18.11.0
10.2.154.15
8.19.2	

在这里插入图片描述

3、16 升级18报 hashMap错误

由于npm 要求nodejs 18 +,vue-cli-service 要求 ssl ,所以先关闭;vue3 +vite没这个问题;

# 报错
node:internal/crypto/hash:71
  this[kHandle] = new _Hash(algorithm, xofLen);
 
# 修正方案,在 package.json 编译和执行命令前添加:SET NODE_OPTIONS=--openssl-legacy-provider &&
 "dev": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
  "build:prod": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build",

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1878069.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型微调实战之基于星火大模型的群聊对话分角色要素提取挑战赛:Task01:跑通Baseline

目录 0 背景1 环境配置1.1 下载包1.2 配置密钥1.3 测试模型 2 解决问题2.1 获取数据2.2 设计Prompt2.2 设计处理函数2.3 开始提取 附全流程代码 0 背景 Datawhale AI夏令营第二期开始啦,去年有幸参与过第一期,收获很多,这次也立马参与了第二…

基于Python的求职招聘管理系统【附源码】

摘 要 随着互联网技术的不断发展,人类的生活已经逐渐离不开网络了,在未来的社会中,人类的生活与工作都离不开数字化、网络化、电子化与虚拟化的数字技术。从互联网的发展历史、当前的应用现状和发展趋势来看,我们完全可以肯定&…

AI视界引擎 | ​基于 YOLOv8 和计算机视觉 CV 的实时识别系统!

本文来源公众号“AI视界引擎”,仅用于学术分享,侵权删,干货满满。 原文链接:​基于 YOLOv8 和计算机视觉 CV 的实时识别系统! 技术进步和创新正在尽可能地推进作者的日常生活,但仍有很大一部分社会群体因为…

OverTheWire Bandit 靶场通关解析(中)

介绍 OverTheWire Bandit 是一个针对初学者设计的网络安全挑战平台,旨在帮助用户掌握基本的命令行操作和网络安全技能。Bandit 游戏包含一系列的关卡,每个关卡都需要解决特定的任务来获取进入下一关的凭证。通过逐步挑战更复杂的问题,用户可…

poi-tl 生成 word 文件(插入文字、图片、表格、图表)

文章说明 本篇文章主要通过代码案例的方式,展示 poi-tl 生成 docx 文件的一些常用操作,主要涵盖以下内容 : 插入文本字符(含样式、超链接)插入图片插入表格引入标签(通过可选文字的方式,这种方…

昇思MindSpore学习笔记3--张量 Tensor

一、张量Tensor概念 矢量、标量和其他张量的计算函数,有内积、外积、线性映射以及笛卡儿积等 张量坐标在 n 维空间内,有 nr 个分量 每个分量都是坐标的函数,变换时每个坐标分量都按规则作线性变换 张量是一种特殊的数据结构,类似于数组和…

haproxy实现代理和负载均衡

HaProxy介绍: haproxy是法国开发者威利塔罗在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计&…

狼人杀系列

目录 杀人游戏(天黑请闭眼) (1)入门版 (2)标准版 (3)延伸版——百度百科 (3.1)引入医生和秘密警察 (3.2)引入狙击手、森林老人和…

学习gateway网关路由时遇到的问题

遇到这个问题先别慌,我们首先要检查是哪里出问题了,从报错信息中我们可以看到,他说 Unable to find GatewayFilterFactory with name -AddRequestHeader 找不到这个路由过滤器,所以导致网关设置失败,从这条信息上我…

Mac可以读取NTFS吗 Mac NTFS软件哪个好 mac ntfs读写工具免费

在跨操作系统环境下使用外部存储设备时,特别是当Windows系统的U盘被连接到Mac电脑时,常常会遇到文件系统兼容性的问题。由于Mac OS原生并不完全支持对NTFS格式磁盘的读写操作,导致用户无法直接在Mac上向NTFS格式的U盘或硬盘写入数据。下面我们…

web学习笔记(六十九)vue2

目录 1. vue2创建脚手架项目 2.vue2如何关闭eslint 1. vue2创建脚手架项目 (1)在cmd窗口输入npm install -g vue/cli命令行,快速搭建脚手架。 (2) 创建vue2项目 (3) 选择配置项目&#xff0c…

ic基础|功耗篇04:门级低功耗技术

大家好,我是数字小熊饼干,一个练习时长两年半的IC打工人。我在两年前通过自学跨行社招加入了IC行业。现在我打算将这两年的工作经验和当初面试时最常问的一些问题进行总结,并通过汇总成文章的形式进行输出,相信无论你是在职的还是…

pdf合并,pdf合并成一个pdf,pdf合并在线网页版

在处理pdf文件的过程中,有时我们需要将多个pdf文件合并成一个pdf文件。作为一名有着丰富计算机应用经验的技术博主,我将为您详细介绍如何将多个pdf文件合并成一个pdf文件。 pdf合并方法:使用, “轻云处理pdf官网” 打开 “轻云处…

mysql_config 命令, 可以查看mysqlclient库的位置在/usr/lib64/mysql下

好吧,其实我是从这里知道了 -l 后面加的库名和so文件这种名不一样,因为库文件实际叫下面这个名(前面有lib)。

昇思MindSpore学习笔记1--基本介绍

昇思MindSpore是一个全场景深度学习框架。 一、框架组成 1. 模型库ModelZoo 提供深度学习算法网络。 2. 扩展库MindSpore Extend 拓展领域场景,如GNN/深度概率编程/强化学习等。 3. 科学计算MindSpore Science 科学计算套件。 包含数据集、基础模型、预置高精度模…

Mybatis从源码分析——启动到解析配置文件再到执行SQL语句过程

文章目录 前言解析配置文件解析源码Mapper文件解析过程二级缓存解析过程SQL的解析 SQL执行流程openSession()流程Executor执行器二级缓存查询数据流程 插件使用原理 前言 mybatis的体系结构: public class App {public static void main(String[] args) {String re…

【Java】解决Java报错:UnsupportedOperationException in Collections

文章目录 引言一、UnsupportedOperationException的定义与概述1. 什么是UnsupportedOperationException?2. UnsupportedOperationException的常见触发场景3. 示例代码 二、解决方案1. 使用适当的集合类型2. 创建可变副本3. 使用合适的集合工厂方法4. 使用不可变集合…

win11 (将星x17promax) 安装WSL 子系统

最初只是想着在win11系统下挂载ext4盘符,方便使用。 目录 0. 简介1.安装WSL子系统1.1 环境确认1.1.1 虚拟化设置1.1.2 系统设置1.1.3 开启开发者模式(此项有必要?)1.1.4 安装WSL子系统 2.WSL操作指令2.0 WSL相关命令2.1 WSL重置2.…

《概率论与数理统计》期末复习笔记_上

目录 第1章 随机事件与概率 1.1 随机事件 1.2 事件的关系与运算 1.3 概率的定义与性质 1.4 古典概型_重点 1.5 几何概型 1.6 条件概率与乘法公式 1.7 全概率公式与贝叶斯公式_重点 1.8 事件的独立性_重点 1.9 伯努利概型_重难点 第2章 随机变量及其分布 2.1 随机变…

MySQL之可扩展性(三)

可扩展性 向外扩展 可以把向外扩展(有时也称为横向扩展或水平扩展)策略划分为三个部分:复制、拆分以及数据分片(sharding).最简单也最常见的向外扩展的方法是通过复制将数据分发到多个服务器上,然后将备库用于读查询。这种技术对于以读为主的应用很有效。它也有一…