H5嵌入小程序(web-view)、BMap百度地图组件、导航功能、返回web-view页

H5嵌入小程序(web-view)及导航功实现

  • 1、H5页面中的地图展示
  • 2、H5传递数据到微信小程序,并调用wx.openLocation微信内置地图及导航功能的实现

1、H5页面中的地图展示

  • 创建地图容器,添加导航按钮
<template><div><div class="baidumap" id="allmap"></div> //创建地图容器<div class="button_row"><van-button type="info" round @click="getNavi()">导航前往</van-button></div></div>
</template><style lang="scss" scoped>
.button_row {margin-top: 30px;
}
.van-button {width: 300px;
}
.baidumap {width: 100%;height: 500px;margin-top: 45px;
}
</style>
  • 页面地图加载
<script>
export default {data() {return {map: null};},mounted() {this.baiduMap();},methods: {baiduMap() {if (window.BMap) this.map = new window.BMap.Map("allmap"); // 创建Map实例this.map.enableScrollWheelZoom(); // 开启鼠标滚轮缩放this.map.addControl(new window.BMap.NavigationControl()); //向地图中添加缩放控件this.map.addControl(new window.BMap.ScaleControl()); //比例尺控件this.map.addControl(new window.BMap.MapTypeControl()); //负责切换地图类型的控件/* 根据 经纬度 定位|标记 */let point = new window.BMap.Point( //实例坐标点Number(this.details.long),Number(this.details.lat));var marker = new window.BMap.Marker(point); //创建标注this.map.addOverlay(marker); // 将标注添加到地图中this.map.centerAndZoom(point, 18); // 初始化地图,设置中心点坐标和地图级别}}
};
</script>

2、H5传递数据到微信小程序,并调用wx.openLocation微信内置地图及导航功能的实现

1.H5页面核心代码

public/index.html中引入jweixin-1.6.0.js,建议使用高版本;

<meta name="viewport"content="width=device-width, initial-scale=1.0"http-equiv="cache-control"content="no-cache"/>
<script src="./jweixin-1.6.0.js"></script>

页面中的点击导航按钮触发事件


getNavi() {var wxApp = false;wx.miniProgram.getEnv(function (res) {if (res.miniprogram) {wxApp = true;} else {wxApp = false;}});if (wxApp) { //小程序环境let {lng ,lat,name,address,} = this.info;//数据自己赋值wx.miniProgram.navigateTo({url: '/pages/navi/navi?lng=' + lng + '&lat=' + lat + '&name=' + name + '&address=' + address,//跳转回小程序页面,并传参success: function () {console.log('成功跳回小程序')},fail: function () {console.log('跳转回小程序页面失败');},});}
}

2.微信小程序接收传参

  • 获取H5传递参数的方式为: console.log(options)
  • latitude和longitude必须为数字类型,不支持字符串类型,需要parseFloat进行转换;
  • 调用wx.openLocation接口API进行微信内置地图调起;
	//nai.jsdata: {num:true},/*** 生命周期函数--监听页面加载*/onLoad(options) {//console.log(options)if (options != undefined) {//判断跳转页面;if (options.lat != "" && options.lat != undefined) {//获取H5传递参数let latitude = parseFloat(options.lat)let longitude = parseFloat(options.lng)let name = options.namelet address = options.addressthis.setData({num:false})//执行导航页wx.openLocation({latitude,longitude,name,address,scale: 18})}}},
/*** 生命周期函数--监听页面显示*/onShow() {let a = getCurrentPages()console.log(a,!this.data.num,'onShow');//wx.navigateBack 无效,确认一下小程序中页面栈if(!this.data.num){wx.navigateBack({//解决wx.openLocation调起地图后需要点击两次返回才到web-view页面delta: 1})}},

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/234112.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于通信基站综合防雷方案介绍

为了获取更好的通信效果&#xff0c;通信基站在选址时通常地势要高于周围环境&#xff0c;气候条件恶劣&#xff0c;夏季通讯及机房设备及发射铁塔遭受雷击灾害的风险较高&#xff0c;而现代的电信设备对雷电又较为敏感&#xff0c;使得雷害问题日益凸显出来&#xff0c;如果防…

裂解汽油行业分析:到2027 年将达到 202.4 亿美元

裂解汽油&#xff0c;又称pygas&#xff0c;是石化工业中用石脑油或瓦斯油生产乙烯和丙烯的副产品。热解气是一种复杂的碳氢化合物混合物&#xff0c;主要由苯、甲苯和二甲苯等芳烃组成。热解汽油是生产苯乙烯、苯酚和合成橡胶等化学品的宝贵原料。 全球市场&#xff1a; 预计在…

延迟消息队列的几种实现方案,哪种更适合业务,要看具体情况分析

延迟消息队列的几种实现方案&#xff0c;延迟消息怎么实现&#xff0c;很多人可能一想到的是rabbitmq的死信队列来实现&#xff0c;但是一旦引入mq的话&#xff0c;就依赖这个中间件&#xff0c;另外维护成本&#xff0c;开发成本都很大&#xff0c;那有么有简单点的实现方式呢…

Linux安全之SELinux理解

安全增强式 Linux&#xff0c;即SELinux(Security-Enhanced Linux)是一个 Linux 内核的安全模块&#xff0c;其提供了访问控制安全策略机制&#xff0c;包括了强制访问控制(Mandatory Access Control&#xff0c;MAC)。SELinux 是一组内核修改和用户空间工具&#xff0c;已经被…

9ACL访问控制列表

为什么要有访问控制&#xff08;Access Control List&#xff09;&#xff1f; 因为我可能在局域网中提供了一些服务&#xff0c;我只希望合法的用户可以访问&#xff0c;其他非授权用户不能访问。 原理比较简单&#xff0c;通过对数据包里的信息做过滤&#xff0c;实现访问控…

houdini 神经网络

实现个神经网络的3D可视化&#xff0c;美爆了&#xff01;-腾讯云开发者社区-腾讯云 https://vimeo.com/stefsietz GitHub - julrog/nn_vis: A project for processing neural networks and rendering to gain insights on the architecture and parameters of a model throu…

unity2d 关闭全局重力

UNITY2D项目默认存在Y轴方向重力&#xff0c;创建俯视角2D场景时可通过以下配置关闭 Edit > Project Settings > Physics 2D > General Settings > Gravity 设置Y0

vue打包后直接本地访问index.html

以下方法可能有些项目并不生效 在vue.config.js 文件&#xff0c;没有的话就新建一个&#xff0c;并添加publicPath: ./ ’ module.exports {publicPath: ./ }router.js 把mode改成hash模式 const router new Router({mode: "hash",routes }); export default rout…

Elasticsearch——索引数据

索引可以说是Elasticsearch中非常重要的模块&#xff0c;一个索引可以视作关系数据库中的一张表&#xff0c;本帖将详细介绍与Elasticsearch索引相关的各种功能等。主要内容如下&#xff1a; 索引映射(mapping)结构的定义方法&#xff0c;常用的各种字段类型和动态映射的使用。…

细说 MySQL 用户安全加固策略

这是一篇关于如何加强 MySQL 用户安全的文章&#xff0c;通读全文您可以了解密码复杂度策略、连接控制插件以及密码变更策略的相关知识。本文内容仅供参考&#xff0c;请在操作时以实际环境为准&#xff0c;避免造成经济损失。 作者&#xff1a;余振兴&#xff0c;爱可生 DBA 团…

Linux系统LVS+Keepalived群集

目录 一、概述 &#xff08;一&#xff09;群集特性 1.负载均衡 2.健康检查&#xff08;探针&#xff09; 3.故障转移 &#xff08;二&#xff09;Keepalived 1.作用 &#xff08;1&#xff09;支持故障自动转移 &#xff08;2&#xff09;支持节点健康状态检…

Wireshark与其他工具的整合

第一章&#xff1a;Wireshark基础及捕获技巧 1.1 Wireshark基础知识回顾 1.2 高级捕获技巧&#xff1a;过滤器和捕获选项 1.3 Wireshark与其他抓包工具的比较 第二章&#xff1a;网络协议分析 2.1 网络协议分析&#xff1a;TCP、UDP、ICMP等 2.2 高级协议分析&#xff1a;HTTP…

使用k8s部署Mysql实例~hostpath,nfs服务器,PV和PVC持久化

1.k8s数据存储的分类&#xff1a; 1.基础存储的分类&#xff1a; 分类说明EmptyDirEmptyDir是在Pod被分配到Node时创建的&#xff0c;无须手动指定&#xff0c;当Pod销毁时&#xff0c; EmptyDir中的数据也会被永久删除HostPathHostPath就是将Node主机中一个实际目录挂载到Po…

Spring Boot重试调用第三方API

简介 在实际的应用开发中&#xff0c;我们经常需要调用第三方API来获取数据或执行操作。然而&#xff0c;由于网络波动、第三方服务不稳定等原因&#xff0c;API调用可能会面临失败的情况。为了提高应用的可靠性和稳定性&#xff0c;我们需要在调用第三方API时实现优雅的重试机…

【HTML】解析垂直滚动轮播效果的HTML、CSS和JavaScript实现

解析垂直滚动轮播效果的HTML、CSS和JavaScript实现 在现代Web开发中&#xff0c;滚动轮播效果是网页设计中常见的交互元素之一。在本文中&#xff0c;我们将深入解析一段HTML、CSS和JavaScript的代码&#xff0c;实现了一个简单而高效的垂直滚动轮播效果。通过该代码&#xff…

云仓酒庄的品牌雷盛红酒分享红酒的颜色越深代表越好吗?

红酒颜色从宝石红、石榴红到紫红甚至砖红&#xff0c;颜色各异色彩纷呈。有朋友问云仓酒庄品酒师&#xff0c;是不是红酒的颜色越深代表酒越好&#xff1f; 颜色较深的葡萄酒&#xff0c;一般酒体比较厚重&#xff0c;风格比较强劲&#xff0c;单宁含量也较高&#xff0c;是好…

NFS权限问题

如果您想允许特定的用户&#xff08;例如 qrcode 用户&#xff0c;其 UID 为 1014&#xff09;在 NFS 共享上具有访问权限&#xff0c;同时仍然保留其他用户的默认映射行为&#xff0c;您可以按照以下步骤进行配置&#xff1a; 为了允许 qrcode 用户访问共享目录&#xff0c;您…

在vue中通过js动态绘制table,并且合并连续相同内容的行,支持点击编辑单元格内容

首先是vue代码 <template><div id"body-container"style"position: absolute"><div class"box-container"><div class"lsb-table-box" ><div class"table-container" id"lsb-table"&…

jenkins入门

文章目录 前言一、 jenkins的安装二、新建简单任务总结 前言 本篇文章是 jenkins 的入门级别案例&#xff0c;包括安装、基础概念介绍、新建简单任务 一、 jenkins的安装 下载 jenkins https://www.jenkins.io/download/ 当前案例下载的是 2.426.2 LTS 版本 下载安装jdk11 …

电商平台商品详情API接口|商品详情页(一)

电商网站上&#xff1a; 小电商&#xff1a;页面静态化的方案; 比如 电商平台商品详情API接口商品的信息放到表中 页面模板&#xff0c;渲染成html页面&#xff0c;每次用户请求的时候&#xff0c;直接返回html页面&#xff0c;不涉及到业务逻辑。 缺点一旦模板发生了变更&…