myMap.events.add('click', function (e)
{
if (needed_point)
obj_collection.removeFromMap(myMap);
//смотрим на координаты щелчка
//var coords = e.get('coordPosition');
needed_point = new ymaps.Placemark(coords, {},{preset: 'twirl#blueStretchyIcon', draggable: false});
obj_collection = ymaps.geoQuery(needed_point).addToMap(myMap);
console.log(coords);
//находим ближайшую точку мкада
var closestObject = arPlacemarksRez.getClosestTo(coords);
//составляем маршрут между двумя точками
ymaps.route([
closestObject.geometry.getCoordinates(),
coords
]).then(function (route) {
//myMap.geoObjects.add(route);
//пишем дистанцию на метке
var distance = Math.round(route.getLength()/1000);
needed_point.properties.set({iconContent: distance});
});
});
改成
myMap.events.fire('click', function (e)
{
if (needed_point)
obj_collection.removeFromMap(myMap);
//смотрим на координаты щелчка
//var coords = e.get('coordPosition');
needed_point = new ymaps.Placemark(coords, {},{preset: 'twirl#blueStretchyIcon', draggable: false});
obj_collection = ymaps.geoQuery(needed_point).addToMap(myMap);
console.log(coords);
//находим ближайшую точку мкада
var closestObject = arPlacemarksRez.getClosestTo(coords);
//составляем маршрут между двумя точками
ymaps.route([
closestObject.geometry.getCoordinates(),
coords
]).then(function (route) {
//myMap.geoObjects.add(route);
//пишем дистанцию на метке
var distance = Math.round(route.getLength()/1000);
needed_point.properties.set({iconContent: distance});
});
});
什么都没发生
对地理编码器的请求不会立即执行。因此,如果您想使用从地理编码器收到的一些数据,那么您需要等待来自地理编码器的请求完成。
https://jsfiddle.net/3gc1jda2