You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vite中导入Ramda报错‘does not provide an export named 'default'’的解决方法

解决Vite项目中Ramda的"does not provide an export named 'default'"错误

Ramda在新版本里改用纯ES模块规范了,不再提供默认导出——如果你写的是import R from 'ramda'这种默认导入代码,就会触发这个错误。下面是几种解决办法:

方案1:按需导入指定方法

直接挑需要的方法导入,还能减小打包体积:

import { map, filter, reduce } from 'ramda';

// 示例用法
const doubled = map(x => x * 2, [1,2,3]);

方案2:整体导入为命名空间

要是习惯用R当统一前缀,用命名空间导入语法就行:

import * as R from 'ramda';

// 示例用法
const doubled = R.map(x => x * 2, [1,2,3]);

方案3:修改Vite配置(不推荐)

如果非要保留import R from 'ramda'的写法,可以在vite.config.js里做如下配置,强制转换模块导出方式:

import { defineConfig } from 'vite';

export default defineConfig({
  resolve: {
    alias: {
      ramda: 'ramda/dist/ramda.es.js'
    }
  },
  optimizeDeps: {
    include: ['ramda']
  }
});

不过这种方法会让打包体积变大,也不符合ES模块的最佳实践,优先选前两种方案更稳妥。

内容的提问来源于stack exchange,提问作者Bon Andre Opina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:30:53