weijun-lab / Leaflet.TrackPlayer

A Leaflet track playback plugin, enabling you to swiftly create stunning track replay functionality./ 一个leaflet轨迹回放插件,帮助你快速构建出精美的轨迹回放功能。
MIT License
81 stars 11 forks source link

修复一个实际使用中的bug #5

Closed raoxiongwen closed 5 months ago

raoxiongwen commented 5 months ago

真是帮大忙了,感谢大佬,在实际使用中出现了如下情况,地图dom尺寸变化后,拖拉地图轨迹线段会消失 https://github.com/weijun-lab/Leaflet.TrackPlayer/assets/75081273/5fd95bd8-75df-480e-bca1-9480bb684df4 对这个bug进行了修复

weijun-lab commented 5 months ago

嘿嘿,你试试其实不是插件里添加的polyline会在地图尺寸变化时显示异常,是无论通过何种方式添加的polyline都会在地图尺寸更新时显示异常,除了覆盖物异常外,就连底图也会异常。leaflet的方案是在需要时调用invalidateSize方法,最关键的是作为一个插件,目标是提供预期明确的功能,像这种对宿主应用行为的无意识改变需要尽量避免,应该和leaflet哲学保持一致,将invalidateSize调用权交给开发者,否则就会造成开发者预期之外的事情发生。不过还是感谢你的技术贡献,你觉得呢?

raoxiongwen commented 5 months ago

有道理,这样确实对宿主环境造成了干扰,思维还是局限了,哈哈哈哈,又学到了