你好 做钉钉小程序文件预览的时候 调用钉钉api 然后传入文件路径后预览出现参数异常怎么解决
//搜索两地之间距离和路程
function G(id) {
return document.getElementById(id);
}
var ac = new BMap.Autocomplete( //建立一个自动完成的对象
{"input" : "suggestId"
,"location" : map
});
var ac2 = new BMap.Autocomplete( //建立一个自动完成的对象
{"input" : "suggestId2"
,"location" : map
});
ac.addEventListener("onhighlight", function(e) { //鼠标放在下拉列表上的事件
var str = "";
var _value = e.fromitem.value;
var value = "";
if (e.fromitem.index > -1) {
value = _value.province + _value.city + _value.district + _value.street + _value.business;
}
str = "FromItem<br />index = " + e.fromitem.index + "<br />value = " + value;
value = "";
if (e.toitem.index > -1) {
_value = e.toitem.value;
value = _value.province + _value.city + _value.district + _value.street + _value.business;
}
str += "<br />ToItem<br />index = " + e.toitem.index + "<br />value = " + value;
G("searchResultPanel").innerHTML = str;
});
ac2.addEventListener("onhighlight", function(e) { //鼠标放在下拉列表上的事件
var str = "";
var _value = e.fromitem.value;
var value = "";
if (e.fromitem.index > -1) {
value = _value.province + _value.city + _value.district + _value.street + _value.business;
}
str = "FromItem<br />index = " + e.fromitem.index + "<br />value = " + value;
value = "";
if (e.toitem.index > -1) {
_value = e.toitem.value;
value = _value.province + _value.city + _value.district + _value.street + _value.business;
}
str += "<br />ToItem<br />index = " + e.toitem.index + "<br />value = " + value;
G("searchResultPanel2").innerHTML = str;
});
var myValue;
ac.addEventListener("onconfirm", function(e) { //鼠标点击下拉列表后的事件
var _value = e.item.value;
myValue = _value.province + _value.city + _value.district + _value.street + _value.business;
G("searchResultPanel").innerHTML ="onconfirm<br />index = " + e.item.index + "<br />myValue = " + myValue;
//setPlace();
});
var myValue2;
ac2.addEventListener("onconfirm", function(e) { //鼠标点击下拉列表后的事件
var _value = e.item.value;
myValue2 = _value.province + _value.city + _value.district + _value.street + _value.business;
G("searchResultPanel2").innerHTML ="onconfirm<br />index = " + e.item.index + "<br />myValue = " + myValue2;
//setPlace2();
getPoint();
//getduration();
});
function getPoint(){
var myGeo = new BMap.Geocoder();
var points = [];
myGeo.getPoint(myValue, function(point){
if (point) {
document.getElementById("result").innerHTML += myValue + ":" + point.lng + "," + point.lat + "</br>";
var address = new BMap.Point(point.lng, point.lat);
var marker = new BMap.Marker(address);
map.addOverlay(marker);
marker.setLabel(new BMap.Label("1:"+myValue,{offset:new BMap.Size(20,-10)}));
points[0] = address;
myGeo.getPoint(myValue2, function(point){
if (point) {
document.getElementById("result").innerHTML += myValue2 + ":" + point.lng + "," + point.lat + "</br>";
var address = new BMap.Point(point.lng, point.lat);
var marker = new BMap.Marker(address);
points[1] = address;
map.addOverlay(marker);
marker.setLabel(new BMap.Label("2:"+myValue2,{offset:new BMap.Size(20,-10)}));
console.log(points);
getduration(points[0],points[1]);
}
}, "南昌市");
}
}, "南昌市");
}
function getduration(point1,point2){
var output = "驾车需要";
var searchComplete = function (results){
if (transit.getStatus() != BMAP_STATUS_SUCCESS){
return ;
}
var plan = results.getPlan(0);
output += plan.getDuration(true) + "\n"; //获取时间
output += "总路程为:" ;
output += plan.getDistance(true) + "\n"; //获取距离
G("output").innerHTML =output;
}
var transit = new BMap.DrivingRoute(map, {renderOptions: {map: map},
onSearchComplete: searchComplete,
onPolylinesSet: function(){
setTimeout(function(){alert(output)},"1000");
}});
transit.search(point1, point2);
}
function Reset() {
map.clearOverlays();
}
作为一名AI语言模型,我并不能了解钉钉小程序的具体情况,所以我不能直接解决这个问题。但是可以提供一些可能有用的信息:
1.首先,查看钉钉小程序文档,确认参数是否正确。如果参数正确,可以进一步排查网络连接是否正常,钉钉API是否有问题等。
2.如果确认钉钉API调用没有问题,可能问题在于文件路径的传递。可以检查一下传递文件路径的代码,确认参数是否正确传递。如果参数正确,可以进一步检查文件路径是否存在、是否有权限访问等。
3.如果仍然无法解决问题,可以考虑使用debugger进行调试,查看具体出错的位置。
以上仅是提供一些可能有用的信息,具体解决方法还需要结合具体情况进行实际排查。