SyntaxError: The requested module 'node:fs/prom以及 TypeError: crypto.getRandomVal

309 阅读1分钟

问题一

使用vite打包npm run dev时,出现以下报错:

image.png

SyntaxError: The requested module 'node:fs/promises' does not provide an export named 'constants'

解决方案:

手动修复它。做法,但它可以解决你的问题。

找到 node_modules/vite/.../dep-Bsx9IwL8.js 文件中的以下代码(这里是我自己报错的路径,需要根据报错替换成自己的):

在第9行看到了:

import fsp, { constants } from "node:fs/promises";

把他改为:

import fsp from 'node:fs/promises';
import { constants as fspConstants } from 'node:fs';

问题二

然而当我以为项目能跑起来时, npm run dev,又出现以下报错:

image.png

查了下资料,这是由于node版本过低或者vite版本过高导致的,我选择了降级vite版本

这里附上vite常见指令

  1. 查看可安装的版本: npm view vite versions --json
  2. 安装最新版本: npm install -g vite
  3. 安装指定版本(V5.4.11): npm install vite@5.4.11 --save-dev
  4. 查看已安装的版本: npm list vite
  5. 卸载已安装的版本: npm uninstall -g vite

npm list vite 后,看到我用的是7.0.0,先卸载,再在列表中选择安装5.4.11

image.png

安装后就能跑起来了