6***@qq.com
6***@qq.com
  • 发布:2025-04-18 13:22
  • 更新:2025-04-18 17:27
  • 阅读:151

【报Bug】mac系统 使用vue3+ts新建的cli项目 通过HBuliderX运行到浏览器报错,

分类:uni-app

产品分类: uniapp/H5

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 14.0 (23A344)

HBuilderX类型: 正式

HBuilderX版本号: 4.57

浏览器平台: Chrome

浏览器版本: 无 不涉及浏览器

项目创建方式: HBuilderX

操作步骤:

mac系统 使用vue3+ts新建的cli项目 通过HBuliderX运行到浏览器报错, 我试了4台mac设备都有这个问题,使用终端运行 npm run dev:h5无问题 可以正常启动

预期结果:

希望正常启动

实际结果:

09:52:35.085 /Users/tianshuai/git/weshyper_dev_uniapp/node_modules/unimport/dist/shared/unimport.MMUMmZ45.cjs:424
09:52:35.085 importEntry.meta ??= {};
09:52:35.085 ^^^
09:52:35.085 SyntaxError: Unexpected token '??='
09:52:35.085 at wrapSafe (internal/modules/cjs/loader.js:1001:16)
09:52:35.085 at Module._compile (internal/modules/cjs/loader.js:1049:27)
09:52:35.086 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
09:52:35.086 at Module.load (internal/modules/cjs/loader.js:950:32)
09:52:35.086 at Function.Module._load (internal/modules/cjs/loader.js:790:12)
09:52:35.086 at Module.require (internal/modules/cjs/loader.js:974:19)
09:52:35.086 at require (internal/modules/cjs/helpers.js:101:18)
09:52:35.086 at Object.<anonymous> (/Users/tianshuai/git/weshyper_dev_uniapp/node_modules/unimport/dist/shared/unimport.D6_N7ILk.cjs:3:23)
09:52:35.086 at Module._compile (internal/modules/cjs/loader.js:1085:14)
09:52:35.086 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
09:52:35.093 已停止运行...

bug描述:

09:52:35.085 /Users/tianshuai/git/weshyper_dev_uniapp/node_modules/unimport/dist/shared/unimport.MMUMmZ45.cjs:424
09:52:35.085 importEntry.meta ??= {};
09:52:35.085 ^^^
09:52:35.085 SyntaxError: Unexpected token '??='
09:52:35.085 at wrapSafe (internal/modules/cjs/loader.js:1001:16)
09:52:35.085 at Module._compile (internal/modules/cjs/loader.js:1049:27)
09:52:35.086 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
09:52:35.086 at Module.load (internal/modules/cjs/loader.js:950:32)
09:52:35.086 at Function.Module._load (internal/modules/cjs/loader.js:790:12)
09:52:35.086 at Module.require (internal/modules/cjs/loader.js:974:19)
09:52:35.086 at require (internal/modules/cjs/helpers.js:101:18)
09:52:35.086 at Object.<anonymous> (/Users/tianshuai/git/weshyper_dev_uniapp/node_modules/unimport/dist/shared/unimport.D6_N7ILk.cjs:3:23)
09:52:35.086 at Module._compile (internal/modules/cjs/loader.js:1085:14)
09:52:35.086 at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
09:52:35.093 已停止运行...

mac系统 使用vue3+ts新建的cli项目 通过HBuliderX运行到浏览器报错, 我试了4台mac设备都有这个问题,使用终端运行 npm run dev:h5无问题 可以正常启动

2025-04-18 13:22 负责人:无 分享
已邀请:
6***@qq.com

6***@qq.com (作者)

node_modules/@dcloudio/vite-plugin-uni/bin/uni.js 添加了日志console.log(1, process.version) 打印出来node版本为14.15.1
但是我本地实际终端 node -v 版本为20.18.3
得出结论 我hbuilder运行时使用的node版本号与我的实际终端版本不符 导致运行到浏览器报错

DCloud_UNI_JBB

DCloud_UNI_JBB

我通过cli创建了一个vue3 + ts的项目,执行了 npm i 安装依赖,h5和微信小程序都能正常work,开发环境也是mac

DCloud_UNI_JBB

DCloud_UNI_JBB

或者手动修改下那块代码,改成兼容的语法

      if (importEntry.meta == null) {  
        importEntry.meta = {};  
      }
  • 6***@qq.com (作者)

    稍等 我搞个最小复现demo发出来 我应该把demo放到哪里让你看?

    2025-04-18 13:55

  • DCloud_UNI_JBB

    回复 6***@qq.com: 评论区可以发附件

    2025-04-18 13:56

  • 6***@qq.com (作者)

    不光这一个问题,由于内置node版本过低,配置TypeScript-eslint 也会报错,

    2025-04-18 13:57

  • 6***@qq.com (作者)

    Failed to load plugin '@typescript-eslint' declared in '.eslintrc.js': Class extends value undefined is not a constructor or null

    2025-04-18 13:58

  • DCloud_UNI_JBB

    回复 6***@qq.com: 你什么版本的node

    2025-04-18 13:58

  • 6***@qq.com (作者)

    回复 DCloud_UNI_JBB: 我本机的node 是三个版本 使用nvm切换 分别为18.13.0 20.13.1 22.9.0

    我使用终端什么问题都没有 只有使用hbuilder运行到浏览器才会有问题,

    我找到了hbuilder包路径下的内置node 查看到他的版本是14.19.0 。 但是他的node里面packagejson显示的是18.20.1

    2025-04-18 14:02

  • 6***@qq.com (作者)

    回复 DCloud_UNI_JBB: 方便发个微信联系方式吗 我方便截图等

    2025-04-18 14:03

  • DCloud_UNI_JBB

    回复 6***@qq.com: 我用的node是 18.20.8 的,??= 这个语法我查了是要 15+ 就行

    2025-04-18 14:06

  • DCloud_UNI_JBB

    回复 6***@qq.com: 这个评论区就能发图片

    2025-04-18 14:07

  • 6***@qq.com (作者)

    回复 DCloud_UNI_JBB: 我知道这个语法是16以上就行 我现在最大的问题就是卡在hbuilder内置的 node版本不知道怎么升级

    2025-04-18 14:11

DCloud_UNI_JBB

DCloud_UNI_JBB

你要不要把hbuilderx升级到最新版本再试试

  • 6***@qq.com (作者)

    hbuilderx 多个版本都安装了, 电脑重启了 他自带的node我也用最新的替换了 都不行

    2025-04-18 14:16

  • 6***@qq.com (作者)

    我先尝试使用最小demo复现

    2025-04-18 14:16

  • DCloud_UNI_JBB

    回复 6***@qq.com: 我的电话是 13460036576,你发问题图到微信上吧

    2025-04-18 14:18

6***@qq.com

6***@qq.com (作者)

我升级了, 然后这个node版本号也是这个

DCloud_UNI_JBB

DCloud_UNI_JBB

4.57版本的hx运行也没问题

  • 6***@qq.com (作者)

    看最新的回复 有代码包 执行不起来

    2025-04-18 14:25

6***@qq.com

6***@qq.com (作者)

我用了新的 还是不行 这是我的代码

6***@qq.com

6***@qq.com (作者)

这是版本号 直接使用终端运行npm run dev:h5无问题

  • DCloud_UNI_JBB

    你的项目下面根目录没看见node_modules

    2025-04-18 14:29

  • 6***@qq.com (作者)

    回复 DCloud_UNI_JBB: 我是刚删了才发你的, 直接带着那个压缩 直接就文件太大不让上传附件了

    2025-04-18 14:30

DCloud_UNI_JBB

DCloud_UNI_JBB

你的demo我也能跑起来

  • 6***@qq.com (作者)

    现在问题就卡在这里了, 我认为我哪里都没问题 但是就是跑不起来, 导致我配置TypeScript-eslint也报错

    2025-04-18 14:31

  • DCloud_UNI_JBB

    回复 6***@qq.com: 加我微信聊

    2025-04-18 14:32

  • 6***@qq.com (作者)

    回复 6***@qq.com: 我从新卸载了hbuilderx 在重新装一次吧, 虽然我昨天已经卸载两次了

    2025-04-18 14:32

  • 6***@qq.com (作者)

    回复 DCloud_UNI_JBB: 微信多少?

    2025-04-18 14:34

  • DCloud_UNI_JBB

    回复 6***@qq.com: 13460036576

    2025-04-18 14:34

要回复问题请先登录注册