uni-app vue3的cli项目更新到3.96后 在H5报错 Cannot read properties of undefined (reading 'isReady')

发布于 1周前 作者 wuwangju 来自 Uni-App

uni-app vue3的cli项目更新到3.96后 在H5报错 Cannot read properties of undefined (reading ‘isReady’)

操作步骤:

  • 使用命令pnpm dev:h5运行,再用Edge浏览器预览项目

预期结果:

  • 没有报错,像3.95版本一样正常

实际结果:

  • 报错Cannot read properties of undefined (reading 'isReady')

bug描述:

  • vue3的cli项目更新到3.96,运行起来命令行上没有报错,在浏览器上打开H5,控制台报错Cannot read properties of undefined (reading 'isReady')
  • 如果把项目版本回退到3.95再运行则没有问题,由此可知是因为升级版本导致的,望官方修复bug。
  • 通过此提示:uni-app 有新版本发布,请执行 npx @dcloudio/uvm 更新。执行的依赖更新

附件:

c23c226ae189f5d3042bcf27d4cfbc01 5c65c96336f3435b6d67111e88ee0768


4 回复

未复现此问题,请提供下测试工程。


强刷清空缓存并硬刷新,就没有此问题了

感谢反馈,如果还有其他问题,请开新贴提问

uni-app 的 Vue 3 CLI 项目中,更新到 3.96 版本后,在 H5 环境下出现 Cannot read properties of undefined (reading 'isReady') 错误,通常是由于某些依赖或 API 的变更导致的。以下是一些可能的解决方案:

1. 检查 uni-app 版本兼容性

确保你使用的 uni-app 版本与 Vue 3 兼容。你可以尝试降级到之前的稳定版本,看看问题是否依然存在。

npm install @dcloudio/uni-app@3.95.0

2. 检查 vuevue-router 版本

确保 vuevue-router 的版本与 uni-app 兼容。你可以尝试更新或降级这些依赖。

npm install vue@3.2.0
npm install vue-router@4.0.0

3. 检查 uni-app 的 H5 配置

vue.config.jsmanifest.json 中,检查是否有关于 H5 的配置项,确保配置正确。

// vue.config.js
module.exports = {
  configureWebpack: {
    // 其他配置
  },
  devServer: {
    // 其他配置
  }
}

4. 检查 uni-app 的 API 使用

确保你在代码中使用的 uni-app API 是最新的,并且没有使用已弃用的 API。特别是检查 isReady 相关的代码,确保它在正确的上下文中使用。

5. 清除缓存并重新安装依赖

有时候,缓存可能会导致问题。你可以尝试清除 node_modulespackage-lock.json,然后重新安装依赖。

rm -rf node_modules package-lock.json
npm install

6. 检查第三方库

如果你使用了第三方库,确保这些库与 uni-app 和 Vue 3 兼容。你可以尝试更新或降级这些库。

7. 查看官方文档和社区

查看 uni-app 的官方文档和社区,看看是否有其他开发者遇到类似的问题,并找到解决方案。

8. 调试代码

在代码中添加调试信息,看看 isReady 是在哪个地方被调用的,以及为什么会出现 undefined

console.log('isReady context:', this);

9. 提交 Issue

如果以上方法都无法解决问题,你可以考虑在 uni-app 的 GitHub 仓库中提交一个 Issue,提供详细的错误信息和复现步骤,以便开发者帮助你解决问题。

10. 回滚版本

如果问题确实是由于 uni-app 3.96 版本的更新引起的,你可以暂时回滚到之前的版本,等待官方修复。

npm install @dcloudio/uni-app@3.95.0
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!