Nb
Study
.com
🔍 请输入搜索关键字

vite-plugin-node-polyfills 让node核心模块可以运行在浏览器

nbstudy 发表于 2025-05-20 14:29:45

由于Node.js的核心模块(如fs、path、Buffer 等)是Node.js环境特有的,它们提供了对文件系统、路径处理等功能的访问。浏览器环境(如Chrome、Firefox等)并不支持这些模块,因为浏览器的安全模型限制了对本地文件系统的直接访问。

在使用 vite 的项目是,如果依赖的第三方包,使用了 Node's Core Modules, 项目可能会报错,通过下列插件可以解决这一问题。

vite-plugin-node-polyfills

具体配置如下:

javascript 复制代码
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { nodePolyfills } from 'vite-plugin-node-polyfills';

// https://vite.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    //
    nodePolyfills()
  ],
})

nodePolyfills 支持 include 和 exclude 选择,具体可以参考插件文档。