简单说一下遇到的问题,标注点出不来情况,之后是.wxml文件中map标签行内定义longitude="{{map.lng}}" 、latitude="{{map.lat}}"、markers="{{map.markers}}"然后在.js文件中也分别定义。
.wxml文件
<view class=\'wc_area_mapbox\'> <map class=\'wc_area_map\' bindtap=\'location\' bindmarkertap=\'location\' show-location longitude="{{map.lng}}" latitude="{{map.lat}}" markers="{{map.markers}}"></map> </view>
.js文件
const app = getApp(); Page({ data: { map:{ lat:0, //这里必须定义lat,lng,不然标注点出不来 lng:0, markers:[], navigation:null }, service_detail: [], wc_id:null, }, onLoad: function (options) { var that = this; that.setData({ wc_id: options.id }) that.get_wc_detail(); }, get_wc_detail: function () { var that=this; wx.showLoading({ title: \'加载中\', }) wx.request({ url: app.globalData.url + \'index.php/api/Home/service_detail\', data:{ id: that.data.wc_id, lng: app.globalData.location.longitude, lat: app.globalData.location.latitude }, success:function(res){ console.log(res) wx.hideLoading(); if(res.data.status==200){ that.setData({ navigation: res.data.data.name, service_detail: res.data.data, \'map.lat\': res.data.data.lat, \'map.lng\':res.data.data.lng, \'map.markers\':[{ latitude: res.data.data.lat, //这里也定义 longitude: res.data.data.lng, name: res.data.data.title }] }) wx.setNavigationBarTitle({ title: that.data.navigation }) }else{ wx.showToast({ title: res.data.error, icon:\'loading\', duration:1000 }) } }, fail:function(){ wx.hideLoading(); wx.showToast({ title: \'请求失败\', icon:\'loading\', duration:1000 }) } }) }, location:function(){ wx.openLocation({ //调用导航 latitude: this.data.map.lat, longitude: this.data.map.lng, name: this.data.navigation, scale: 28 }) } })