胡萝卜猫
胡萝卜猫
  • 发布:2020-04-16 15:19
  • 更新:2020-04-20 10:43
  • 阅读:1507

【报Bug】uniapp安卓,v3模式下,map地图组件诸多问题

分类:uni-app

详细问题描述

听说官方最近要强制升级v3编译器,对已上线稳定运行半年的项目启用v3进行测试,结果每个功能页面都有js报错,特别是地图组件,几乎没法使用。官方的框架问题,本不该开发者来测试找bug,额外增加开发者的时间和精力,开发者更关注的是稳定。希望官方不要轻易强制升级某个模式,毕竟有项目已实实在在上线运行,如只是改个界面标题,也要整个框架升级,实在非常不合理。

地图实现采用了app-vue,非nvue。
以下是其中一个错误项,其它的你们好好排查,真的做到向下兼容。
1、地图组件属性markers 和 polyline,本是两个独立的属性,在自由组件模式下互相不影响,但v3模式下,对markers动态赋值会影响polyline的渲染。
2、移动和放大缩小地图会报错:TypeError: Converting circular structure to JSON at view.umd.min.js:1
3、uni.createMapContext(mapId,this) 和 $getAppMap 在v3模式下是否无法使用?调用会报错:null is not an object (evaluating 'map')

[内容]

重现步骤

[map.vue]

this.polyline = _polyline;  
setTimeout(() => {  
    this.markers = _markers;  
}, 1000);

[结果]
运行诸多js错误,且不明原因,不一一列举,在自由组件模式下编译,一切正常。

[编译版本]
2.6.11(v3)

IDE运行环境说明

[HBuilder 或 HBuilderX]
HBuilderX
uni-app

[IDE版本号]
HBuilderX
2.6.11.20200409

App运行环境说明

[Android版本号]
8.1.0

[iOS版本号]

[手机型号]
OPPO PACM00

[模拟器型号]

2020-04-16 15:19 负责人:DCloud_uniAD_HDX 分享
已邀请:
DCloud_uniAD_HDX

DCloud_uniAD_HDX

2.和地图没有关系,更新HBuilderX 2.6.12+ 已修复
3.是时机问题,V3生命周期更标准化,是否在onReady 或 onLoad 延时调用,参考文档生命周期

DCloud_heavensoft

DCloud_heavensoft

个人建议,为了你的长期利益,map页面升级到nvue。
因为官方确实很难每次发版时测试到很边角的使用方式,map的推荐使用方式是nvue,体验更好,我们的测试力度也更大。

  • yellowms

    理由懂,但实际项目可能由于复杂度,没法map页面使用nvue,也是个问题所在

    就目前看,nvue下,还存在几个api未对齐,所以不得已选择vue模式

    2020-04-17 10:50

  • 胡萝卜猫 (作者)

    如果可以采用nvue,我们肯定是首选。目前内页还好说,但我们的地图组件是放在首页的,nvue和vue混合模式,首页如果是nvue,之前试过是不行的,需要中间页跳转,不符合我们的需求。

    2020-04-17 11:07

  • 胡萝卜猫 (作者)

    存在bug,这个理解。但目前v3的情况,不适合强制升级,看看论坛的其他开发者反馈,这影响太大了,起码让上线项目有个稳定运行的周期。

    2020-04-17 11:13

  • DCloud_uniAD_HDX

    回复 yellowms: 具体是哪些api?

    2020-04-17 16:05

  • DCloud_uniAD_HDX

    回复 胡萝卜猫: 首页 nvue 地图会有问题吗

    2020-04-17 16:05

  • 胡萝卜猫 (作者)

    回复 DCloud_uniAD_HDX: 我们那时刚好遇到白屏问题,等不了官方解决,决定先用vue

    2020-04-17 17:27

  • DCloud_uniAD_HDX

    回复 胡萝卜猫: 请提供一个简单工程,我们分析看看

    2020-04-17 17:51

  • DCloud_heavensoft

    回复 胡萝卜猫: 首页更推荐使用nvue,v3下首页使用nvue启动更快。如果仍然有白屏问题,可以发出来我们看下

    2020-04-17 22:28

DCloud_uniAD_HDX

DCloud_uniAD_HDX

1.已确认,今天发版修复

DCloud_uniAD_HDX

DCloud_uniAD_HDX

HBuilerX 2.6.14+ 已修复

  • sf

    并没有修复,我项目中仍然报错,详见BUG贴https://ask.dcloud.net.cn/question/97702

    2020-05-27 17:18

  • DCloud_uniAD_HDX

    回复 sf: 日志问题不影响地图,已回复你

    2020-05-27 18:59

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