腾讯地图在zui(bootstrap)的modal中不能显示报错:Uncaught far <= 0

在使用腾讯地图过程中,遇到一个十分奇怪的问题.在页面中可以正常渲染地图,但是放在弹层modal中,却无法正常显示,地图SDK直接无法正常工作,在控制台出现错误:


经过一番测试发现,影响地图的是display:none.只要渲染地图的div或其父级以上层级存在display:none,均无法工作

无法显示示例

不知道SDK内部是作了怎样的一种考虑,由于业务必须使用弹层,而弹层也是要隐藏的,这就造成了矛盾.对此解决办法只有改变一下角度,自己实现一个弹层,这个弹层的隐藏不再由display来控制,而是定位,把它放在屏幕外边以实现隐藏.