volga-volga / react-native-yamap

React Native Yandex Maps | Яндекс Карты | Yandex.MapKit implementation for react native | YandexMaps
152 stars 83 forks source link

Не очищаются маркеры при подаче пустого массива в компонент #87

Closed alexdarh closed 2 years ago

alexdarh commented 2 years ago

Добрый день. Скорее всего это моя ошибка, не ошибка react-native-yamap, но мало ли Снимок экрана 2021-11-23 182545

Проблема в следующем, у меня есть карта в которой я рендерю маркеры путем map массива маркеров. Все маркеры выглядят как маленькие машинки. При наступлении события, массив маркеров обнуляется, (оставшаяся машинка показана другим маркером) и стейт cars становится равным [] но на картах почему-то остается один маркер в виде синей точки.

nmzgnv commented 2 years ago

Та же самая проблема

youngblader commented 2 years ago

Добрый день. Скорее всего это моя ошибка, не ошибка react-native-yamap, но мало ли Снимок экрана 2021-11-23 182545

Проблема в следующем, у меня есть карта в которой я рендерю маркеры путем map массива маркеров. Все маркеры выглядят как маленькие машинки. При наступлении события, массив маркеров обнуляется, (оставшаяся машинка показана другим маркером) и стейт cars становится равным [] но на картах почему-то остается один маркер в виде синей точки.

Подскажите, как вы отрисовали маршрут?

alexdarh commented 2 years ago

Подскажите, как вы отрисовали маршрут?

Из маршрута [findDrivingRoutes(points: Point[], callback: (event: RoutesFoundEvent) => void)] получил точки и по ним отрисовал Polyline

youngblader commented 2 years ago

Подскажите, как вы отрисовали маршрут?

Из маршрута [findDrivingRoutes(points: Point[], callback: (event: RoutesFoundEvent) => void)] получил точки и по ним отрисовал Polyline

А как вы вытянули точки? Можно пример? map.current.findDrivingRoutes(points, event => console.log('event', event)) в свойствах ивента?

alexdarh commented 2 years ago

А как вы вытянули точки? Можно пример? map.current.findDrivingRoutes(points, event => console.log('event', event)) в свойствах ивента?

YaMapRef.current.findDrivingRoutes(points, (event: any) => { let route = event.nativeEvent.routes[0].sections for (let i = 0; i < route.length; i++) { polyline = polyline.concat(route[i].points); }