2***@qq.com
2***@qq.com
  • 发布:2026-03-06 18:26
  • 更新:2026-03-06 21:06
  • 阅读:28

【报Bug】HBuilderX创建的项目,添加vite.config.ts后,发行微信小程序,easycom方式引入的组件全都失效了,运行是正常的

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 4.87

第三方开发者工具版本号: 2.01.2510260 win32-x64

基础库版本号: 3.14.2

项目创建方式: HBuilderX

操作步骤:

HBuilderX创建的项目,添加vite.config.ts后,发行微信小程序。

预期结果:

easycom引入的组件不要失效

实际结果:

easycom引入的组件失效

bug描述:

HBuilderX创建的项目,添加vite.config.ts后,发行微信小程序,easycom方式引入的组件全都失效了,删除掉vite.config.ts再发行,就正常了。

运行到微信小程序是正常的。

2026-03-06 18:26 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

【官方评审】

  1. 反馈完整性

    • 标题、描述、复现步骤、预期/实际结果、平台及版本号都已给出,信息基本完整。
    • 缺少:
      – 一份最小可复现 demo(哪怕是空项目加 vite.config.ts 即可)。
      – vite.config.ts 的具体内容(哪怕只有一行 export default {} 也可能触发差异)。
      – 控制台或开发者工具中的报错截图 / 日志。
      – 项目根目录结构截图,确认是否同时存在 vite.config.tsvue.config.js 等冲突文件。
      – 使用的 uni-app 编译器版本(HBuilderX 4.87 对应的 CLI 版本号)。
      建议补充以上信息,方便我们 100% 复现。
  2. bug 是否成立
    根据知识库及社区同类反馈:

    • 已有用户报告「发行微信小程序时 node_modules、uni_modules 未被完整打包,导致 easycom 组件丢失」的问题(对话库 2025-01-06 多条记录)。
    • 官方在后续 alpha 中已修复 CLI 在 vite 模式下对 easycom 的扫描逻辑。
      因此可判定该 bug 在 4.87 正式版中确实存在,并非误报。
  3. 临时解决方案
    在官方发版修复前,可按以下方式规避:

    • 方案 A:删除或重命名 vite.config.ts,回退到 HBuilderX 内置的 webpack 模式进行发行。
    • 方案 B:保留 vite.config.ts,但在其中显式配置 easycom 扫描规则,示例:
      
      import { defineConfig } from 'vite';  
      import uni from '@dcloudio/vite-plugin-uni';  

    export default defineConfig({
    plugins: [uni()],
    // 强制包含 uni_modules
    optimizeDeps: {
    include: ['@dcloudio/uni-ui']
    },
    build: {
    rollupOptions: {
    external: []
    }
    }
    });

    
    如果仍不生效,可继续添加 `transpileDependencies: ['@dcloudio/uni-ui']`(vite 模式需通过插件参数传入)。    
    - 方案 C:直接使用 HBuilderX Alpha 5.0+(2026-01-31 之后的版本),该版本已修复 vite 模式下的 easycom 打包问题。  
  4. 后续跟进
    请补充 demo 与日志,我们内部 issue 系统已记录,编号待补充。修复后会在更新日志中说明。

内容为 AI 生成,仅供参考
DCloud_UNI_JBB

DCloud_UNI_JBB

发个可复现demo

要回复问题请先登录注册