使用uniapp的nvue开发地图map功能踩坑记录

nvue(native vue 的缩写)官网介绍

前言

由于这个app项目立项时间很紧,没有时间做技术预研就选了uniapp,地图又是首要功能而且是首页,所以一步一个坑了属于是。
当项目中有使用mapvideolive-pusher等组件且属于主要功能时,非必要不要用uniapp !

踩坑1:开发app时不要用vue写map

之前用vue写过几个前端map功能,本以为uniapp写app也大差不差用vue就行,于是让同事先把首页另一半非地图的UI先写了,留出map容器位置。

结果开始写map的时候发现运行到app后效果和网页完全不同,然后才翻了uniapp的文档发现需要用nvue。那就直接改文件后缀.vue转.nvue,结果样式完全错乱(文档有写很多css样式nvue不支持),乱到Cursor都拯救不了只能重写布局。

踩坑2:map的markers属性限制很多

具体请参考官网map组件介绍

我先说我遇到的一个问题。我用Cursor写代码,运行到iPhone模拟器上看效果,在写地图自定义marker时自动生成了以下代码:

js 复制代码
mapMarkers.value = [
      {
        ...省略,
        customCallout: {
          display: 'ALWAYS',
          anchorX: 0,
          anchorY: 20,
        },
      },
]

其中设置了偏移量anchorY,运行到iPhone模拟器和真机上后效果都没有问题,然后开心的写完了功能,然后Android同事说运行到Android上后没有偏移量。

调试了半天后发现文档里customCallout仅仅支持设置display这个属性。咱就是说,uniapp能不能起码保持下iOS、Android两端统一性啊?或者像下面display的说明一样写在文档里。

相关推荐
用户125758524362 分钟前
XYGo Admin ArtTable 表格组件:一行代码搞定加载、刷新与分页
前端
gogoing4 分钟前
Prettier 配置说明
前端·javascript
十有八七5 分钟前
Hermes Agent 自进化实现:从源码到架构的深度拆解
前端·人工智能
渐儿5 分钟前
NestJS 生产级开发教程
前端
前端毕业班6 分钟前
uni-app onShareAppMessage hook 原理分析
前端·javascript
gogoing8 分钟前
React 分包加载优化
前端·react.js
gogoing10 分钟前
Babel 配置与工具
前端·javascript
亲亲小宝宝鸭11 分钟前
重新install,项目就跑不起来了?!
前端·npm
Mike117.24 分钟前
GBase 8a 物化视图依赖和 DDL 风险排查记录
java·服务器·前端
蜡台40 分钟前
Vue3 Hook 与 Store 状态管理:深度解析与选型指南
前端·javascript·vue.js