解决 error when starting dev server TypeError crypto$2.getRandomValues

1. 前言

当使用 vite 创建 vue 项目的时候,使用 npm run dev 启动创建项目的时候报错。

2. 错误提示

vbnet 复制代码
error when starting dev server:
TypeError: crypto$2.getRandomValues is not a function

3. 错误截图

4. 错误原因

在启动项目时遇到 crypto$2.getRandomValues 问题,一般都是由于 node 版本太低导致的。解决办法,安装一个高版本的 node,或者使用 nvm 切换一个高版本的 node。

5. nvm 切换高版本

5.1 当前版本

5.2 切换到高版本

6. 问题解决

6.1 启动成功

6.2 页面访问

7. 总结

  1. 找到报错的原因,如果是浏览器环境,那么就可能是浏览器环境不支持 crypto.getRandomValues 方法,可以考虑安装 npm install crypto-browserify --save-dev 库来解决浏览器兼容性;
  2. 由于我是在启动项目时报错,还没有到浏览器访问,因此就是启动的 node 环境存在问题;
  3. 说明当前 node 环境版本太低导致的,升级 node 的版本,就能解决;
  4. 升级 node 版本的两种方法,方案一:安装一个高版本的 node;方案二:使用 nvm 进行 node 版本管理,切换一个高版本(不一定使用 nvm,其他 node 版本管理器一样,只是我使用的是 nvm 版本管理器,所以直接使用它进行了演示)。
相关推荐
蓝冰凌19 小时前
Vue 3 中 defineExpose 的行为【defineExpose暴露ref变量】详解:自动解包、响应性与实际使用
前端·javascript·vue.js
奔跑的呱呱牛20 小时前
generate-route-vue基于文件系统的 Vue Router 动态路由生成工具
前端·javascript·vue.js
柳杉20 小时前
从动漫水面到赛博飞船:这位开发者的Three.js作品太惊艳了
前端·javascript·数据可视化
Greg_Zhong20 小时前
前端基础知识实践总结,每日更新一点...
前端·前端基础·每日学习归类
We་ct21 小时前
LeetCode 148. 排序链表:归并排序详解
前端·数据结构·算法·leetcode·链表·typescript·排序算法
IT_陈寒21 小时前
JavaScript开发者必看:5个让你的代码性能翻倍的隐藏技巧
前端·人工智能·后端
还是大剑师兰特21 小时前
Vue3 中 computed(计算属性)完整使用指南
前端·javascript·vue.js
井川不擦1 天前
前端安全通信方案:RSA + AES 混合加密
前端
孜孜不倦不忘初心1 天前
Ant Design Vue 表格组件空数据统一处理 踩坑
前端·vue.js·ant design