引用百度地图微信小程序JS API模块

1,115 阅读1分钟

目录

  • ??
    作为一名软件专业没有思维的,菜鸟中的圣斗士,未来的程序员, 最近再写一个微信小程序e-life,在这过程中,想要写一个周边的酒店、美食、服务、再分别点击他们的时候,可以在地图上标记处他们的位置,并且可以显示出该地方的具体位置、名称、电话

1.原理

前百度和高德周边查询api的实现机制基本一致,都是使用request接口请求远程https接口,然后返回参数中位置的某种类型的周边信息,最后再把数据动态绑定到页面。

2. js 引入模块

在项目根目录下新建一个路径,下载百度地图微信小程序JavaScriptAPI,解压后得到bmap-xw.js 文件,将其拷贝到新建的路径下,安装完成。
var bmap = require('../../libs/bmap-wx.js');

3. 获取地图

  • 3.1 新建百度地图

    首先小程序获取当前位置api,下面的图片路径请自行按照个人文件路径添加,这也是我没有思维的地方。因为我不知道怎么引入地图在小程序里,并且对map组件没有了解,

wxMarkerData = data.wxMarkerData;
      that.setData({
        markers: wxMarkerData,
        fail: fail,
      });
      that.setData({
        latitude: wxMarkerData[0].latitude
      });
      that.setData({
        longitude: wxMarkerData[0].longitude
      });
    }
    that.setData({
      success: success
    });
  • 3.2 获得信息

    让触发的位置改变颜色

makertap: function (e) {
    var that = this;
    var id = e.markerId;
    that.showSearchInfo(wxMarkerData, id);
    that.changeMarkerColor(wxMarkerData, id);
  },
  • 3.3 setData渲染到页面里,并且显示详情信息 如具体位置,电话,名称
showSearchInfo: function (data, i) {
    var that = this;
    that.setData({
      placeData: {
        title: '名称:' + data[i].title + '\n',
        address: '地址:' + data[i].address + '\n',
        telephone: data[i].telephone == undefined ? '电话:暂无信息' : '电话:' + data[i].telephone
      }
    });
  },

4. 结语

最后结语给自己打打气,作为菜鸟,要努力写代码,改bug,我是最胖的