【问题标题】:react-google-maps to @react-google-maps/api migration, constant for OverlayTypereact-google-maps 到 @react-google-maps/api 的迁移,OverlayType 的常量
【发布时间】:2019-10-19 01:02:58
【问题描述】:

我的应用程序使用 DrawingManager 来绘制多边形。 在 react-google-maps 中,“window.google”变量使常量可用。 "@react-google-map/api" 中的正确语法是什么?

反应谷歌地图:

<GoogleMap ... >
      <DrawingManager
        defaultDrawingMode={google.maps.drawing.OverlayType.POLYGON}
        ...
        />
</GoogleMap>

现在(非常相似)

@react-google-maps/api:

<GoogleMap ... >
      <DrawingManager
        drawingMode={google.maps.drawing.OverlayType.POLYGON}
        ...
        />
</GoogleMap>

尝试了许多语法...不起作用。感觉window.google在启动时被明确删除。我想这是正常的,但如何获得常数?

我收到消息:

Uncaught TypeError: Cannot read property 'OverlayType' of undefined

非常感谢您的帮助!

【问题讨论】:

    标签: react-google-maps


    【解决方案1】:

    好的,这个很简单,需要在库道具中添加“绘图”

    <LoadScript
        googleMapsApiKey="..."
        libraries={["drawing"]}
    >
        <TheWholeApp />
    </LoadScript>
    

    从那以后,没有问题

    <DrawingManager
        drawingMode={google.maps.drawing.OverlayType.POLYGON}
        ... 
    />
    

    【讨论】:

    • 另一个我必须让 DrawingManager 工作的问题是 react 和 react-dom 版本。它是 16.4,并且一直有一条错误消息说“setMap:map 不是 Map 的实例”或类似的东西。升级到最新的 react 和 react-dom(目前是 16.8)解决了这个问题。
    猜你喜欢
    • 2018-04-16
    • 2021-09-13
    • 1970-01-01
    • 2018-02-19
    • 2021-12-09
    • 2020-07-15
    • 2022-10-24
    • 1970-01-01
    • 2021-04-13
    相关资源
    最近更新 更多