谷歌地图删除点后出现奇怪的多边形阴影(React)

时间:2018-06-07 21:25:32

标签: reactjs google-maps google-maps-api-3 polygon

这有点远,但这里有。我在React中创建了一个Polygon组件,除非删除多边形中的一个点,否则它的工作效果很好,然后出现多边形看起来的奇怪阴影。屏幕截图:enter image description here

如果我修改了多边形,那么线索就会消失,它只会在删除后立即发生,而且并不总是发生。感觉就像在Polygon上通过setPath发生奇怪的内存泄漏。

为了让您了解代码的外观,我有两个组件,我将坐标从父DrawingManager传递给MapPolygon作为道具,并且所有更改都发生在通过在子项的componentDidUpdate中设置路径来反映父组件。

export default class DrawingManager extends Component{
  render(){
    return (
      <MapPolygon
          coordinates={path}
          map={this.map}
       />
   )
 }
}


export default class MapPolygon extends Component {
   componentDidUpdate(prev) {
      if (coordinates != prev.coordinates) {
         this.polygon.setOptions({
             paths: coordinates
         });
         this.applyListeners();
      }
    }
}

我知道这是代码的一个非常高级别的概述,但是重新创建问题有点复杂,所以如果有人有类似的问题会告诉我这个问题。

0 个答案:

没有答案