• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

小程序地图(Uni-app)与前端缝合(Vue)的尝试

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
这个作业属于哪个课程 2021春软件工程实践 W班 (福州大学)
这个作业要求在哪里 软件工程实践总结&个人技术博客
这个作业的目标 个人技术博客
其他参考文献 Uni-app官方文档、高德地图官方文档

技术概述

  • 目的:鉴于组员已经在小程序端(Uni-app)写好了地图组件,我就想要拿来给后台的前端复用。
  • 学习该技术的原因:不要重复做轮子(也不算是学习吧,我是靠自己的经验和知识去尝试的)
  • 难点:如何将小程序端(Uni-app)的地图组件与已经写好的前端进行缝合。

技术详述

  • 其实很多时候都会有不同的客户端内嵌网页以达到类似原生app效果(例如隔壁组outfits的社区模块就是安卓客户端内嵌的网页)。

  • 那么能不能倒过来,前端网页做到类似内嵌这些程序的效果,从而达到我在技术概述提到的目的?

    • 就可行性而言,Uni-app本身就能打包成H5网页,因此:
      • 将打包的网页部署去其它结点,利用iframe引入。

      • 把打包的网页塞入Vue框架中的静态资源,然后去调用他。

针对上述情况的网络拓补图

  • 抽离地图组件的详细步骤:
    • (1)复制原有的小程序项目。

    • (2)去掉所有页面,只保留地图组件。

    • (3)删除与小程序授权相关的代码,否则在网页端会出现问题。

    • (4)修改样式,使其更贴合网页端用户使用习惯。

    • (5)打包

流程图

  • 成功,见下图:

技术使用中遇到的问题和解决过程

  • 其实在上面技术详述已经很成功了(假如你只需要一些在H5平台上用到的功能),但万万没想到,在小程序中能正常显示的polygons(多边形,用于显示地点区域)居然没有显示出来。

  • 查了一下官方文档,发现打包出来的H5的地图是不支持polygons属性!这波啊,这波是大意了

  • 解决过程:使用高德地图对小程序地图进行一次复现了,不过幸好:
    • 一些数据处理算法是通用的(比如计算区域堵塞状态从而给于不同的颜色),可以直接复制
    • 后台接口也是通用的,因为后台提供了polygons属性数组,我只需要进行一些处理就可以兼容了,体现了前后端分离的好处。

总结

  • 虽然Uni-app可以编译多个平台的应用,但是要注意不同平台之间的一些功能是否被支持。
  • 要认真看官方文档,收集充分的资料,不然就是在做无用功!

参考文献、参考博客

Uni-app关于map组件的文档

Amap-Vue(第三方Vue-高德地图插件)官方文档


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
小程序单选框 radio发布时间:2022-07-18
下一篇:
银河宿舍微信记账小程序发布说明发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap