- 当前 Bug 的表现(可附上截图)
- 预期表现(如图)
官方文档:https://mp.weixin.qq.com/wxopen/plugindevdoc?appid=wx5bc2ac602a747594&token=&lang=zh_CN#-
特殊说明:
注意:数据要在data中初始化,不要再onLoad中直接setData,因为onLoad中直接setData,properties的routeInfo的observer: function (newVal, oldVal),newVal接收不到参数,导致参数报错,之后可以通过其bind他事件setData更新routeInfo达到变更起终点参数的效果。
官方案例:
let plugin = requirePlugin("myPlugin")
let routeInfo = {
startLat: 39.90469, //起点纬度 选填
startLng: 116.40717, //起点经度 选填
startName: "我的位置", // 起点名称 选填
endLat: 39.94055, // 终点纬度必传
endLng :116.43207, //终点经度 必传
endName:"来福士购物中心", //终点名称 必传
mode:“car” //算路方式 选填
}
Page({
data: {
routeInfo: routeInfo
}
})这是官方的案例,需要写在外面,问题是这样,页面只会执行一次。
这边的数据是需要硬编码写死嘛??
我所需要的功能是动态的,导航的经纬度信息是根据用户所在位置的,按照官方这种描述,是永远无法实现了嘛?
微信小程序开发问题解答
微信小程序开发者回答:
问题已经解决,采用 wx:if 语句,在数据没有赋值的时候地图不加载,数据一旦赋值,再显示地图。
这样的话,可以在onload里面控制地图数据初始化。
onLoad: function(options) {
let routeInfo = 获取数据
that.setData({
routeInfo: {
startLat: '', //起点经度 选填
startLng: '', //起点纬度 选填
startName: '', // 起点名称 选填
endLat: routeInfo.endLat, // 终点经度必传
endLng: routeInfo.endLng, //终点纬度 必传
endName: '测试', //终点名称 必传
mode: "car" //算路方式 选填
}
})
本文网址:http://www.91bianli.com/weixinxiaochengxu/5203.html