微信小程序 实现地图

跳转获取经纬度

wxml

<map id=myMap" 
bindtap="map"  
style="width: 100%; height: 300px;"
markers="{{markers}}" 
latitude="{{latitude}}" 
longitude="{{longitude}}">
</map>

js

// pages/map/map.js
Page({
 
  /**
   * 页面的初始数据
   */
  data: {
    latitude:"",
    longitude:"",
    markers: [],
    
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that=this
 
// 获取当前位置的经纬度
    wx.getLocation({
      type: 'wgs84',
      success (res) {
        console.log(res)
        const latitude = res.latitude
        const longitude = res.longitude
        // 赋值当前位置的经纬度
         that.setData({
           latitude:latitude
         })
         that.setData({
          longitude:longitude
        })
// 查询到的周边五公里的信息
        wx.request({
          url: 'http://www.cs.com/admin/Map/index',
          data:{latitude,longitude},
          method:"POST",
          success:(r)=>{
            if(r.statusCode!=200){
              
              return false
            }
            var markers=[]
           console.log(r.data.data)
          //  循环赋值给markers,在地图上显示坐标
           for(var i=0;i<r.data.data.length;i++){
            markers[i]=r.data.data[i]
            markers[i].iconPath="/image/location.png"
          }
           that.setData({markers:[...markers]})
          
          }
        })
      }
     })
    // 把标点添加到 markers
    const normalCallout = {
      latitude:30.91803,
      longitude: 121.4741,
      iconPath: '/image/location.png',
    }
     var markers=[normalCallout]
     that.setData({ markers})
  },
 
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
 
  },
 
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
 
  },
 
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
 
  },
 
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
 
  },
 
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
 
  },
 
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
 
  },
 
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
 
  },
 
})

实现标点
也可这么写
可以选择标点 也可不选 默认小红点

  var markers=[]
     markers.push({
      latitude:31.03222,
       longitude: 121.22879,
       iconPath: '../../img/1.jpg',
})
      markers.push({
         latitude:30.91803,
         longitude: 121.4741,
         
})
     that.setData({ markers})
     console.log(markers)

效果如图
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值