微信小程序JS加载esmap地图的实例详解


Posted in Javascript onSeptember 04, 2019

一、在微信小程序里显示室内三维地图 需要满足的两个条件

调用ESMap室内地图需要用到小程序web-view组件,想要通过 web-view 调用ESMap室内地图需要满足以下 2 个条件:

1. 小程序是企业主体,微信 web-view 组件不对个人类型的小程序开放。

2. 您需要有一个自己的域名,在嵌入网页的时候需要在微信后台验证域名(只有自己域名下的网页才能被正确地显示哦,不能随便找一个公开链接)。

微信小程序JS加载esmap地图的实例详解

二、具体实现步骤

1、域名验证:

由于微信平台的规定,web-view 指向的地址,必须是在微信小程序后台登记的域名,否则会出现“不支持打开非业务域名,请重新配置”的提示。

首先我们在微信的后台找到开发 > 开发设置 > 业务域名模块,并填上你需要绑定的域名。

微信小程序JS加载esmap地图的实例详解

需要注意的是,这里的域名强制 https,需要配置好 https 证书,购买服务器的时候也要注意购买支持 https 的服务器。

接下来,我们需要下载一个微信的验证文件,放在你域名的根目录下,并且支持访问。

具体来说,如果您的域名www.esmap.cn,微信的验证文件是WATLNxupm4.txt,您需要确保https://www.esmap.cn/WATLNxupm4.txt 可以公开访问。确认无误之后,点击保存即可成功保存。

注:小程序所有用到的https请求都需要配置合法域名

2、嵌入带有室内地图的web-view

这个过程其实很简单,找到你微信小程序的.wxml文件,添加以下代码         

<web-viewsrc="https://www.esmap.cn /esmap.html"/>

其中 https://www.esmap.cn /esmap.html 是带有地图的 H5 页面

室内地图制作流程,您可以使用下面两种方式构建这个页面:

1) 从https://www.esmap.cn 官网中复制测试地图源码DEMO,在您自己的服务器进行免费部署。

2) 参考https://www.esmap.cn 室内三维地图SDK开发说明,在您已有的 H5 页面上添加自己制作的室内地图。

3、小程序 web-view 的一些提示

微信小程序的 web-view 只能是全屏的,并且会覆盖页面中的所有其他组件。

1) 如果想在网页中判断是否处于微信小程序中

var ua = window.navigator.userAgent.toLowerCase();
  if (ua.indexOf('micromessenger') == -1) {//说明不在微信中
    // 走不在小程序的逻辑
  } else {
    wx.miniProgram.getEnv(function(res) {
      if (res.miniprogram) {
        // 走在小程序的逻辑
      } else {
        // 走不在小程序的逻辑
      }
    })
  }

2) 如果网页想给小程序传递信息,可以通过 wx.miniProgram.postMessage 方法。

3) 小程序中可以通过 postMessage 方法监听网页传递回来的数据,但是该方法仅在特定时机(小程序后退、组件销毁、分享)触发,没法实时传递消息。

4) 网页跳转到小程序页面

wx.miniProgram.navigateTo({
   url: '/pages/esmap/esmap?location=' + obj.location
  });

三、更多效果!

微信小程序JS加载esmap地图的实例详解微信小程序JS加载esmap地图的实例详解

更多室内三维地图引擎例子功能体验

https://www.esmap.cn/sdk-demo/demo/index.html?tt=cnblogs5

总结

以上所述是小编给大家介绍的微信小程序JS加载esmap地图的实例,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
插件:检测javascript的内存泄漏
Mar 04 Javascript
jQuery 表单验证扩展(四)
Oct 20 Javascript
原生JavaScript生成GUID的实现示例
Sep 05 Javascript
JavaScript获取页面中超链接数量的方法
Nov 09 Javascript
JavaScript实现清空(重置)文件类型INPUT元素值的方法
Nov 17 Javascript
Angular2学习笔记——详解路由器模型(Router)
Dec 02 Javascript
jQuery Ajax请求后台数据并在前台接收
Dec 10 Javascript
BootStrap 导航条实例代码
May 18 Javascript
基于webpack 实用配置方法总结
Sep 28 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
Jul 03 Javascript
教你搭建按需加载的Vue组件库(小结)
Jul 29 Javascript
Node.js操作MongoDB数据库实例分析
Jan 19 Javascript
深入浅出vue图片路径的实现
Sep 04 #Javascript
webpack 如何解析代码模块路径的实现
Sep 04 #Javascript
layui使用button按钮 点击出现弹层 弹层中加载表单的实例
Sep 04 #Javascript
微信小程序 自定义复选框实现代码实例
Sep 04 #Javascript
layui弹出框Tab选项卡的示例代码
Sep 04 #Javascript
在layui tab控件中载入外部html页面的方法
Sep 04 #Javascript
微信自定义分享链接信息(标题,图片和内容)实现过程详解
Sep 04 #Javascript
You might like
DC这些乐高系列动画电影你看过几部?
2020/04/09 欧美动漫
PHP 和 MySQL 基础教程(一)
2006/10/09 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
基于Laravel实现的用户动态模块开发
2017/09/21 PHP
PHP+redis实现微博的拉模型案例详解
2019/07/10 PHP
js 限制数字 js限制输入实现代码
2012/12/04 Javascript
jQuery Pagination Ajax分页插件(分页切换时无刷新与延迟)中文翻译版
2013/01/11 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
解决css和js的{}与smarty定界符冲突问题的两种方法
2013/09/10 Javascript
js和jquery如何获取图片真实的宽度和高度
2014/09/28 Javascript
jQuery的基本概念与高级编程
2015/05/14 Javascript
浅析四种常见的Javascript声明循环变量的书写方式
2015/10/14 Javascript
canvas知识总结
2017/01/25 Javascript
纯JS实现轮播图
2017/02/22 Javascript
利用Vue.js+Node.js+MongoDB实现一个博客系统(附源码)
2017/04/24 Javascript
vue+axios实现登录拦截的实例代码
2017/05/22 Javascript
bootstrap+jQuery 实现下拉菜单中复选框全选和全不选效果
2017/06/12 jQuery
mint-ui 时间插件使用及获取选择值的方法
2018/02/09 Javascript
vue 每次渲染完页面后div的滚动条保持在最底部的方法
2018/03/17 Javascript
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
vue 界面刷新数据被清除 localStorage的使用详解
2018/09/16 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
前端Vue项目详解--初始化及导航栏
2019/06/24 Javascript
微信自定义分享链接信息(标题,图片和内容)实现过程详解
2019/09/04 Javascript
详解为什么Vue中不要用index作为key(diff算法)
2020/04/04 Javascript
Python使用Flask框架获取当前查询参数的方法
2015/03/21 Python
Python中Django发送带图片和附件的邮件
2017/03/31 Python
python使用锁访问共享变量实例解析
2018/02/08 Python
Python+PIL实现支付宝AR红包
2018/02/09 Python
python协程之动态添加任务的方法
2019/02/19 Python
Django Admin 上传文件到七牛云的示例代码
2020/06/20 Python
python绕过图片滑动验证码实现爬取PTA所有题目功能 附源码
2021/01/06 Python
AmazeUI的下载配置与Helloworld的实现
2020/08/19 HTML / CSS
纬创Java面试题笔试题
2014/10/02 面试题
暑假社会实践心得体会
2014/09/02 职场文书