高德地图页keepalive情况下,跳转再返回后,偶发地图显示空白
背景
高德地图页设置keepalive缓存,跳转下一页返回时,偶发地图显示空白
问题原因
发生问题时,对高德地图实例getSize()获取容器尺寸,得到width、height均为0。
解决
回到页面后调用resize()方法重新计算容器
import KeepAlive, { useActivate } from 'react-activation';
// 缓存组件激活时钩子
useActivate(() => {
mapIns && mapIns.resize();
});