Closed mateeyow closed 4 years ago
Hi, looks like a problem with marker cluster, because that plugin is not updating and is the one that hides the markers, one workaround that you can make on react is set key prop to force updates, here you go a working example, you should probably open a issue react-leaflet-markercluster or try something like this: https://github.com/YUzhva/react-leaflet-markercluster/issues/100#issuecomment-578213443 with this workarount, markercluster is remounted to force update so you lose the slide effect , because DrifMarker is a child of cluster, you can try to get the ref of MarkerCluster and do the forceUpdate()
Hmmm, your codesandbox doesn't seem to work. I've tried adding key to the prop but no dice. I've read around some issue on markercluster they said that it should be fix by just calling setLatLng. It seems that doesn't work.
The refreshClusters also doesn't work.
Hmmm, your codesandbox doesn't seem to work. I've tried adding key to the prop but no dice. I've read around some issue on markercluster they said that it should be fix by just calling setLatLng. It seems that doesn't work.
what? can you sent me a print or something? my codesandbox is a fork from yours but with key={Date.now()}
on markercluster its owrking just fine, will upload a gif here
The refreshClusters also doesn't work.
hi, the refresh should work, if not open an issue on react leaflet marker cluster beacuse its documented here: "If you need to update the clusters icon (e.g. they are based on markers real-time data), use the method refreshClusters()." https://github.com/Leaflet/Leaflet.markercluster#customising-the-clustered-markers https://github.com/Leaflet/Leaflet.markercluster#refreshing-the-clusters-icon
It's working now. Previously there was no Date.now()
key. But that does remove the animation which is why I use this library in the first place. Funny thing is, the movement will still work for normal markers but not for DriftMarker that's why I decided to post the issue here.
I'll try to investigate further and check with markercluster and maybe add an issue there as well.
@mateeyow I'm having the same problem. Have you figured out how to solve this problem yet?
@nguyenanhtrai Nope wasn't able to resolve it. Decided to not use the library.
@mateeyow I think its problem lies in the Leaflet.Marker.SlideTo library. I will learn more about this. Thanks for the feedback.
@mateeyow I think its problem lies in the Leaflet.Marker.SlideTo library. I will learn more about this. Thanks for the feedback.
Hi, as I explained previously, leaflet-marker-cluster is not refreshing, and it will not refresh they have that written in the docs "If you need to update the clusters icon (e. g. they are based on markers real-time data), use the method refreshClusters()."
Read more here: Clustered Markers
It works, if you place key={Date.now()}
on marker cluster component , because changing the key prop forces a component rerender on react, Leaflet.markercluster is not react, and will not update unless you call refreshClusters()
, but react-leaflet-markercluster as the name says, it's react, and it should detect changes on markers or offer some way to refresh as Leaflet.markercluster offers, the key prop, forces a rerender and shows you that the leaflet-drift-marker its in the correct position when the new render arrives.
If you test the same scenario, but with react-leaflet Marker, it will do the same, if the positions change marker cluster will not detect update, correct me if i am wrong.
Leaflet.Marker.SlideTo its not a dependency on this library.
I am more than free to correct any bug, here, when I have some free time i will try to fix markercluster lib itself, or make and deep analysis
Hi, I'm currently using this package along with react markercluster package. It seems that whenever a marker combines in a cluster and moves out the marker does not appear anymore. Any clue on this? Thank you.
https://codesandbox.io/s/react-leafletdriftmarker-x5mug