uni-app hbuildx 3.2.12使用vue3编译uni-starter项目至小程序平台 报i18n文件找不到

uni-app hbuildx 3.2.12使用vue3编译uni-starter项目至小程序平台 报i18n文件找不到

操作步骤:

  1. 使用hbuilderx新建uniapp项目,使用uni-starter作为模板
  2. 修改mainfest,将vue版本改为3
  3. 运行到微信小程序

预期结果:

编译通过

实际结果:

编译不通过

bug描述:

报错日志:

[广告] 10:31:22.349 开源不易,需要鼓励。去给 uni-app 项目 点个 star 吧 [不再提示]
[广告] 10:31:22.351 DCloud 2021新春招聘开启,欢迎前端、Android、C++/QT来投简历! 详情点击
10:31:22.478 项目 'unicloud-account' 开始编译...
10:31:26.899 当前项目的uniCloud使用的默认服务空间spaceId为:xxxxxxxxxxxxxxxx
10:31:26.921 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。若要正式发布,请点击发行菜单或使用cli发布命令进行发布
10:31:26.992 小程序各家浏览器内核及自定义组件实现机制存在差异,可能存在样式布局兼容问题,参考:https://uniapp.dcloud.io/matter?id=mp
10:31:26.993 正在编译中...
10:32:04.826 文件查找失败:'@intlify/core-base' at ....\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni\packages\vue3\node_modules\vue-i18n\dist\vue-i18n.cjs.js:11
10:32:04.901 文件查找失败:'@intlify/shared' at ....\Program Files\HBuilderX\plugins\uniapp-cli\node_modules\@dcloudio\vue-cli-plugin-uni\packages\vue3\node_modules\vue-i18n\dist\vue-i18n.cjs.js:10
10:32:05.703  ERROR  Build failed with errors.

相关链接:


更多关于uni-app hbuildx 3.2.12使用vue3编译uni-starter项目至小程序平台 报i18n文件找不到的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

补充一下,报错的这2个模块,node_modules下是有的。

更多关于uni-app hbuildx 3.2.12使用vue3编译uni-starter项目至小程序平台 报i18n文件找不到的实战教程也可以访问 https://www.itying.com/category-93-b0.html


问题复现,这边排查下,已加分,感谢您的反馈!

已修复,请升级至HBuilder X 3.3.5版本

这个错误是由于 Vue 3 版本的 uni-app 在编译时缺少必要的 i18n 依赖包导致的。以下是解决方案:

  1. 安装缺失的依赖包: 在项目根目录下执行以下命令安装所需依赖:

    npm install [@intlify](/user/intlify)/core-base [@intlify](/user/intlify)/shared --save-dev
    
  2. 检查 package.json: 确保 dependenciesdevDependencies 中包含了 vue-i18n 相关依赖。uni-starter 项目通常需要:

    "dependencies": {
      "vue-i18n": "^9.0.0"
    }
    
  3. 清理缓存并重新编译

    • 删除 node_modules 文件夹和 package-lock.json(或 yarn.lock
    • 重新运行 npm install
    • 在 HBuilderX 中点击「运行」→「运行到小程序模拟器」→「微信开发者工具」
  4. 检查 HBuilderX 版本兼容性: 确保使用的是 HBuilderX 3.2.12 或更高版本,Vue 3 对版本要求较严格。

  5. 临时解决方案: 如果上述方法无效,可以尝试在 vue.config.js(如没有则创建)中添加配置:

    module.exports = {
      transpileDependencies: ['[@intlify](/user/intlify)']
    }
回到顶部