获取组件 ref
如果你需要访问地图组件实例本身,(例如需要调用map.setFitView()
或者marker.moveAlong()
),可以通过 React 的 ref
机制来获取到组件所对应的地图组件实例。
const $map = useRef(); // RefObject<AMap.Map | undefined>
const $marker = useRef(); // RefObject<AMap.Marker | undefined>
return (
<Amap ref={$map}>
<Marker ref={$marker} position={[...]} />
</Amap>
);
值得注意的是,因为地图是异步渲染的,因此ref.current
可能为undefined
。
更复杂的示例请参考轨迹回放
Example
查看源代码: