You need to enable JavaScript to run this app. 升级Rollup至2.48时导入uikit提示default未导出报错如何解决
优惠活动
大模型
产品
解决方案
定价
更多

升级Rollup至2.48时导入uikit提示default未导出报错如何解决

Rollup 2.x 升级后 uikit 默认导出报错解决方案

该问题是Rollup 2.x对CommonJS模块的导出识别规则、插件配置参数发生变更导致,可按以下步骤排查修复:

1. 先升级适配2.x版本的官方插件

Rollup 2.x已废弃旧版社区插件,统一使用@rollup前缀的官方插件,确保你安装了正确版本的依赖:

npm install @rollup/plugin-alias @rollup/plugin-commonjs @rollup/plugin-node-resolve --save-dev

2. 修正插件配置

旧版插件的配置参数在2.x版本中有调整,重点修改alias和commonjs插件的配置项:

import alias from '@rollup/plugin-alias';
import commonjs from '@rollup/plugin-commonjs';
import resolve from '@rollup/plugin-node-resolve';

export default {
  // 其余rollup基础配置保持不变
  plugins: [
    resolve({ extensions: ['.js', '.json'] }),
    commonjs({
      // 配置uikit的默认导出识别规则
      defaultExports: (modulePath) => {
        if (modulePath.includes('uikit/dist/js/uikit.js')) return ['UIkit'];
        return true;
      }
    }),
    alias({
      // 旧版Paths参数改为entries,Extensions改为小写extensions
      entries: {
        'uikit-util': './node_modules/uikit/src/js/util',
        // 可选配置:直接给uikit指向ES模块源码,可直接避开CommonJS导出兼容问题
        // 'uikit': './node_modules/uikit/src/js/index.js'
      },
      extensions: ['.js', '.json']
    })
  ]
}

3. 备选快速修复方案

如果不想调整配置,可直接修改uikit的导入写法,兼容CommonJS格式的导出规则:

// 原导入写法
// import UIkit from 'uikit';
// 修改为以下任意一种即可
import * as UIkit from 'uikit';
const UIkit = require('uikit');

内容的提问来源于stack exchange,提问作者Mike

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 04:15:03