React集成leaflet-routing-machine时Waypoints重复渲染两次问题求助
Leaflet-Routing-Machine 路点区域重复渲染的常见原因
- 重复初始化路由控件:如果代码里多次调用
L.Routing.control()并添加到地图,每次初始化都会生成一套路点UI,直接导致重复渲染。比如在会重复执行的函数(如事件回调、框架生命周期钩子)里反复创建路由控件,却没先销毁旧实例。 - 重复引入资源文件:页面多次引入leaflet-routing-machine的CSS或JS文件,会触发样式或控件逻辑重复执行,进而渲染出两套路点区域。
- 容器元素重复挂载:如果路由控件绑定的容器元素(通过
container选项指定)被多次插入DOM,或者在Vue/React等框架中组件未正确控制渲染周期,导致容器重复挂载,也会出现路点区域重复的情况。 - 旧实例未销毁就重建:比如单页应用中,切换页面时没销毁之前的路由控件实例,再次进入页面又创建新实例,旧实例的UI仍留在DOM中,最终出现重复渲染。
内容的提问来源于stack exchange,提问作者Kia Kalista
相关产品推荐
相关产品推荐

