微信小程序之绘制多个marker以及调用手机地图软件导航

这篇具有很好参考价值的文章主要介绍了微信小程序之绘制多个marker以及调用手机地图软件导航。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

此文章是为了说明使用微信小程序在腾讯地图上绘制多个marker地图点;然后点击某一个marker进行导航的信息;具体的功能演示如下:

一、功能演示

微信小程序marker,微信小程序,微信小程序,notepad++,小程序

二、前端布局代码

<view style="display: flex;flex-direction: column;">

//地图的布局文件信息

  <map class="mapUI" id="myMap" scale="13" bindmarkertap="bindmarkertap" data-index="{{index}}" show-location markers="{{markers}}" latitude="{{latitude}}" longitude="{{longitude}}" show-location></map>

//以下是点击地图marker之后,下方显示的内容信息

  <view class="topshowinfor">

    <view class="tipInforTop" style="position: fixed;width: 100%;top: 0px;">

      <view class="zoomtop">

        <view class="inputInfor" bindtap="looksearch" style="display: flex;flex-direction: row;justify-content: center;align-items: center;">

          <view>

            企业名称搜索

          </view>

        </view>

      </view>

    </view>

  </view>
 

  <view class="ALLinputInfor">

    <view wx:if="{{isAll==false}}">

      <view class="image-parent" bindtap="showAllAddress">

        <image class='allImg' mode='widthFix' src='/pages/image/yuanadd.png'></image>

        <view class="child">显示全部</view>

    </view> 

    </view>

  </view>

</view>
 

<view class="bottomShow">

  <view class="bottomStart">

    <view>

      <view>{{choiceModel.name}}</view>

      <view class="carAddress">

        <view style="white-space: nowrap;"> 联系电话:</view>

        <view class="totalInfor">15249243002</view>

      </view>

      <view class="carAddress">

        <view style="white-space: nowrap;"> 企业地址:</view>

        <view class="totalInfor">{{choiceModel.addr}}</view>

      </view>

    </view>

    <view>

      <image src="/pages/image/naivicon.png" class="naviImg" bindtap="naviListener"></image>

    </view>

  </view>

</view>

三、js逻辑处理代码

1:marker点击

首先是通过方法bindmarkertap监听用户的点击事件,具体方法如下;

 bindmarkertap(event) {

    var that = this;

    var index = event.detail

    console.log("log_-----queryBean-----", index.markerId)

    for (var i = 0; i < this.data.companyAddress.length; i++) {

      if (i == index.markerId) {

        that.data.posIndex = i;

        that.data.markers[i].callout.borderColor = "#FF0000";

        that.data.markers[i].callout.color = "#FF0000";

      } else {

        that.data.markers[i].callout.borderColor = "#c3c3c3";

        that.data.markers[i].callout.color = "#333333";

      }

    }

    that.setData({

      choiceModel: this.data.companyAddress[that.data.posIndex],

      markers: that.data.markers

    })

  },

说明一:

因为是存在多个数据,所在在用户点击的时候需要循环一下数据,然后通过点击的markerid和数据的makerid进行判断,然后对点击的marker 修改它的外边框的颜色;也就是代码:

 that.data.markers[i].callout.borderColor = "#FF0000";

 that.data.markers[i].callout.color = "#FF0000";

说明二:

    that.setData({

      choiceModel: this.data.companyAddress[that.data.posIndex],

      markers: that.data.markers

    })

这块的代码是为了获取用户点击的数组的指定值;这里的值需要给前端的界面进行显示

2:按钮导航
1:点击按钮

<view>

      <image src="/pages/image/naivicon.png" class="naviImg" bindtap="naviListener"></image>

    </view>

2:js导航代码

  naviListener: function (e) {

    wx.openLocation({

      latitude: parseFloat(this.data.choiceModel.latitude), //维度

      longitude: parseFloat(this.data.choiceModel.longitude), //经度

      name: this.data.choiceModel.name, //目的地定位名称

      scale: 15,  //缩放比例

      address: this.data.choiceModel.addr //导航详细地址

    })

  },

说明:这块的代码是小程序官方提供的代码;直接使用就可以了文章来源地址https://www.toymoban.com/news/detail-740071.html

到了这里,关于微信小程序之绘制多个marker以及调用手机地图软件导航的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序手机号快速验证组件调用方式

    目录 一、测试环境 二、问题现象 三、总结 手机号验证组件(包括快速验证组件和实时验证组件)调用后无法对事件进行回调这个问题,先说结论,以下是正确的使用方式: 一、测试环境 windows10 微信开发者工具(1.06.2307260win32-x64) 基础库(3.0.1[1028]) iPhone XR(IOS 15.2.1) 微信(

    2024年02月10日
    浏览(63)
  • 微信小程序 background多个background背景图叠加以及连写注意事项

    background: url(\\\'https://xxxxxxxx.com\\\') no-repeat top/100% auto,linear-gradient(318deg, #3F0000 0%, #A9143A 100%); 效果: 坑点: 1:多个背景图叠加时(渐变也相当于图片)以逗号分割,越靠前图片叠加时层级越高。网上搜索时发现找到的都是说越靠后层级越高,但我测试的时候确实是越靠前越高。

    2024年02月15日
    浏览(58)
  • 微信小程序-如何点击marker触发事件更改图标icon

    最近在做课设,要求实现一个找附近停车位的功能 绿色marker为空闲车位,红色marker为占用车位,现要求实现点击绿色marker,进行上锁操作,并让绿色锁改为红色锁。 如下图所示: 点击中间绿色锁,跳出弹窗,点击关锁,则锁变红色。 倘若点击红色锁的关锁,则会提示 “该

    2024年02月03日
    浏览(69)
  • uniapp微信小程序 map地图markers图标不显示,markers图标真机调试不显示

    预期效果如下,蓝色为用户位置,红色为店铺位置 均为自定义图标 实际发布后手机上的效果 (此处忽略位置先只关注图标问题) 可以很明确的看到自定义图标失效了,使用了原生自带的图标 关键代码如下 1. 图标问题 在采用自定义图标时 请使用图片 不要使用 svg 类型的,

    2024年02月16日
    浏览(65)
  • 微信小程序调用拨打电话API,实现选择拨打固话或手机号。

    HTML 部分: JavaScipt 部分: (vue中 ,👇这段将写在 methods 里边) 效果 ···  有 固话 且 和 手机号 不相同图片演示:  效果 ···  两个 号码 相同 图片演示:   可根据需求自加判断条件,也可以选择此段代码直接服用。(收藏 关注哟 ♥)

    2024年02月13日
    浏览(40)
  • 微信小程序UV、PV量解释以及接口调用频率

    微信小程序UV、PV量 浏览量(PV): 即通常说的Page View(PV),用户每打开一个网站页面就被记录1次。用户多次打开同一页面,浏览量值累计。 微信小程序中PV是打开小程序的打开次数。 访客数(UV): 一天之内网站的独立访客数(以Cookie为依据),一天内同一访客多次访问网站只计算

    2024年02月16日
    浏览(46)
  • 微信小程序获取是android还是ios,微信小程序-手机操作系统以及微信版本判断

    首先,要判断当前用户的微信版本以及是安卓还是iOS,要调用方法wx.getSystemInfo() 官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/system/system-info/wx.getSystemInfo.html 在获取成功的success方法中,res中包含相关信息,接下来就是做判断: 微信版本判断非常重要,涉及到版本兼容性.更关乎整

    2024年02月15日
    浏览(47)
  • 【uniapp】 微信小程序使用腾讯API地图、路线轨迹、marker标记点

    引入js import amap from \\\'@/common/qqmap-wx-jssdk.js\\\'; var qqmapsdk; qqmapsdk = new amap({ key: \\\'腾讯地图API key\\\' // 必填 }); 小程序配置合法域名 :https://apis.map.qq.com 下载地址 :请前往【小程序地图、腾讯API、商业圈、路线轨迹、地图选点】 示例图 请前往小程序查询

    2024年02月16日
    浏览(73)
  • 微信小程序 <map>: marker id should be a number

    已经按照小程序官方文档的要求做了可是还会报错   查看官方文档发现id并不是必填,但是随便填一个数字型number就可以解决问题   按照文档中所写添加一个id 类型为number   然后就不会有报错了。 在使用小程序地图相关的APi组件时,一定要先去 小程序平台去申请权限 哦,

    2024年02月09日
    浏览(34)
  • 微信小程序关于wxs语法、以及能否引入js中的方法(不能调用)

    页面中使用wxs 或者  参考:WXS | 微信开放文档 wxs能引入外部js文件吗 | 微信开放社区 微信小程序中的WXS语法 1、WXS 中不支持let和const,不支持箭头函数。 2、变量命名必须符合下面两个规则: 首字符必须是:字母(a-zA-Z),下划线(_) 剩余字符可以是:字母(a-zA-Z),下划

    2024年02月06日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包