1***@qq.com
1***@qq.com
  • 发布:2020-01-13 20:59
  • 更新:2020-01-17 16:28
  • 阅读:2401

【已解决】报两个严重的bug,APP端 V3 模式 document未定义 以及非V3无法使用组件

分类:uni-app

详细问题描述

首先是 hbuilderX 2.5.5 编译非V3版本的时候无法使用components组件,自己编写的组件会无法加载,切换回2.5.4就正常,V3版本不知道会不会影响,因为我无法使用V3版本

另一个是比较严重的bug,目前已知只有我们公司现在的开发的项目会这样。

就是使用V3编译器,编译项目的时候,运行到真机会提示:无法找到变量document
我已经尝试按照下方步骤去测试,都不行,无法解决问题,最后切换成非V3版本,才算将项目运行了起来(不然恐怕公司要把我给裁了)

已知:APP端V3无法编译(Android Ios都一样),非V3可以编译运行,小程序可以编译运行,H5可以正常编译运行,与hbuilderX版本无关,经过测试所有版本都会有

1:已知2.5.4会有这样的bug,我切回成旧版本2.5.1、2.4.9,使用V3编译,仍旧报错这个bug,所以应该是一直都会的
2:使用ios设备进行调试,在ios运行APP的时候也会提示找不到document
3:已经进行项目全局搜索,将所有有使用document的地方进行注释(暂时关掉,仍然会提示找不到document)
4:切成非V3版本,可以正常运行
5:我以为是ifdef 条件编译 没有闭合导致的这个bug,所以花了1整天检查了所有的代码,所有的代码都有花括号闭合跟条件编译都有闭合;
6:我以为是hbuilderX for Mac的问题,我换个工作电脑,换成了win10,使用最新的hbuilderX也无法通过V3编译项目
7:我新建立的项目可以运行,我们公司现在在开发的项目无法编译运行,所以应该是我项目中的某一条代码影响了uniapp的编译器,导致抛出的异常,并且这个异常是无法追踪从哪里出来的

总结:V3编译肯定有一个巨坑,而且这个bug还是uniapp方面的代码导致的,我已经全局搜索检查了我的代码,尽可能的将错误都排掉了,但是还是无法编译运行,希望官方人员能将这个问题修复一下,我可以协助修复

Bug已确认:目前V3编译器暂不支持在js中引入css样式,已暂时移除相关代码,等待官方修复

2020-01-13 20:59 负责人:无 分享
已邀请:
1***@qq.com

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

主要问题就是,使用V3版本,编译能正常编译,但是运行到真机中的时候,就提示:Can't find variable: document
这个错误是完全没头绪的,没有定位错误的行数,项目全局搜索也没有相关的代码(都已经注释掉了)

DCloud_UNI_GSQ

DCloud_UNI_GSQ

非v3模式组件问题已修复,更新HBuilderX 2.5.6即可
关于v3模式报document相关错误的问题,你可以上传一个工程

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

    可以给个邮箱吗,我工程上传到附件中怕代码泄露,毕竟这是公司的代码,希望dcloud公司能保密

    2020-01-15 09:53

  • DCloud_UNI_GSQ

    回复 1***@qq.com: 已私信,或者上传为仅管理可见或者私信也可

    2020-01-15 10:52

DCloud_UNI_GSQ

DCloud_UNI_GSQ

document相关错误已定位:v3模式目前不支持在js内引入css

  • MJMoonjer

    遇到了同样的问题,什么时候能解决呢?我并没有在任何一个js模块里引入css文件。鬼知道哪里来的document,我这还只是一个基础框架而已,从vue移植过来的基础框架~

    2020-03-12 00:53

  • DCloud_UNI_GSQ

    回复 MJMoonjer: 非v3模式是否正常?

    2020-03-12 10:43

  • MJMoonjer

    回复 DCloud_UNI_GSQ: 刚刚试了下,非v3编译也报错:

    reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->Exception: TypeError: undefined is not an object (evaluating 'document.documentMode')

    我是不玩了,我直接用自带的demo玩了

    2020-03-12 14:35

  • MJMoonjer

    回复 DCloud_UNI_GSQ: 还有就是,软件经常闪退。我关闭一个项目,在点击manifest.json文件的时候,一天闪退过至少5次,莫明原因

    2020-03-12 14:37

  • DCloud_UNI_GSQ

    回复 MJMoonjer: 你检查你是不是在哪里使用到了document

    2020-03-12 18:36

该问题目前已经被锁定, 无法添加新回复