当传入string类型数值的时候,能画出路径但是有一条收尾相连的线
当传入的值为变量的时候会出现to参数错误
首先ds定义为全局变量
然后在计算距离的时候给予赋值:
qqmapsdk.calculateDistance({
mode:'walking',//mode: 'driving',//可选值:'driving'(驾车)、'walking'(步行),不填默认:'walking',可不填
//from参数不填默认当前地址
//获取表单提交的经纬度并设置from和to参数(示例为string格式)
from: e.detail.value.start || '', //若起点有数据则采用起点坐标,若为空默认当前地址
to: e.detail.value.dest, //终点坐标
success: function(res) {//成功后的回调
console.log("to:"+e.detail.value.dest);
console.log(res);
var res = res.result;
// var dis = [];
for (var i = 0; i < res.elements.length; i++) {
dis.push(res.elements[i].distance); //将返回数据存入dis数组,
}
var tmp;
for(var i = 0;i < res.elements.length;i++){
for(var j = 0;j < res.elements.length - i;j++){
if(res.elements[j].distance > res.elements[j+1]){
tmp = res.elements[j];
res.elements[j] = res.elements[j+1];
res.elements[j+1] = tmp;
}
}
}
for(var i =0;i < res.elements.length;i++){
pt.push(res.elements[i]);//使用的时候填写pt.to.lng就可以了
if(i == res.elements.length-1){
//ds = String(res.elements[i].to.lat)+","+String(res.elements[i].to.lng);
ds={
latitude:res.elements[i].to.lat,
longitude:res.elements[i].to.lng
};
//ds = res.elements[i].to;
//ds = String(ds);
}
console.log("ds"+ds);
console.log("经度:"+res.elements[i].to.lng+"维度:"+res.elements[i].to.lat+"长度:"+res.elements[i].distance);
}//根据远近已经排好序了
_this.setData({ //设置并更新distance数据
distance: dis
});
},
fail: function(error) {
console.error(error);
},
complete: function(res) {
console.log(res);
}
});
具体在这:
包括//的所有定义全都尝试了,都是以下报错:
有没有大佬帮帮忙啊