При передвижении метки на карте в рамках одного дома - меняется адрес, теряется улица
При передвижении метки на карте в рамках одного дома - меняется адрес, теряется улица, координаты точки передаются корректные, если их забить в яндекс карту к примеру- выдается правильный результат - с улицей. Как уточнить геокодирование в этом случае?
if (!address) {
// Ищем по геокодеру яндекса
await ymaps.geocode(coords, { kind: "house" }).then(function (res) {
var firstGeoObject = res.geoObjects.get(0);
console.log(firstGeoObject, "...firstGeoObject...");
/** nice format of returned address */
if (firstGeoObject) {
resultObj.city =
firstGeoObject.getLocalities().length > 0
? firstGeoObject.getLocalities()[0]
: "";
resultObj.area =
firstGeoObject.getAdministrativeAreas().length > 0
? firstGeoObject.getAdministrativeAreas()[0]
: "";
resultObj.secondArea =
firstGeoObject.getAdministrativeAreas().length > 1
? firstGeoObject.getAdministrativeAreas()[1]
: "";
resultObj.street = firstGeoObject.getThoroughfare()
? firstGeoObject.getThoroughfare()
: "";
resultObj.house = firstGeoObject.getPremiseNumber()
? firstGeoObject.getPremiseNumber()
: "";
resultObj.coords = coords;
resultObj.block = "";
if (resultObj.house) {
result = [
resultObj.area,
resultObj.city,
resultObj.street,
resultObj.house,
resultObj.block,
]; // [area, secondArea, city, street, house]
result = [...new Set(result.filter(Boolean))];
self.mapElement.dispatchEvent(
new CustomEvent("address-selected-checkout", {
detail: { result, resultObj, zoneName },
})
);
address = result.join(", ");
console.log(address, "...try with house");
console.log(
resultObj.coords,
"...try with house resultObj.coords"
);
}
}
console.log("Yandex geocode try with house");
/** or just uncomment next line */
// vm.selectedAddress = firstGeoObject.getAddressLine();
});
}
введите сюда описание изображения