Reactjs 将MapBox GL JS与React一起使用-错误:无效类型:“容器”必须是字符串或HtmleElement

Reactjs 将MapBox GL JS与React一起使用-错误:无效类型:“容器”必须是字符串或HtmleElement,reactjs,mapbox,mapbox-gl-js,Reactjs,Mapbox,Mapbox Gl Js,我目前正在将MapBox添加到React项目中,并将其用作指南 当我将ref属性添加到map div时,我得到了如下错误 错误:无效类型:“容器”必须是字符串或HtmleElement 上周,我联系了MapBox支持部门,但尚未收到他们的回复,因此,如果有任何有用的见解,我将不胜感激。谢谢 我在学习教程时遇到了同样的问题。我认为这与React处理裁判的方式有关 使用以下命令在构造函数中创建ref: this.mapContainer = React.createRef(); 然后在使用以下命令

我目前正在将MapBox添加到React项目中,并将其用作指南

当我将ref属性添加到map div时,我得到了如下错误

错误:无效类型:“容器”必须是字符串或HtmleElement


上周,我联系了MapBox支持部门,但尚未收到他们的回复,因此,如果有任何有用的见解,我将不胜感激。谢谢

我在学习教程时遇到了同样的问题。我认为这与React处理裁判的方式有关

使用以下命令在构造函数中创建ref:

this.mapContainer = React.createRef();
然后在使用以下命令定义地图时访问ref:

const map = new mapboxgl.Map({
    container: this.mapContainer.current,
    style: 'mapbox://styles/mapbox/streets-v11',
    center: [this.state.lng, this.state.lat],
    zoom: this.state.zoom
最后,

<div ref = {this.mapContainer} className = "mapContainer"/>

对我来说,解决方案是设置div的类,我想包含map,然后通过querySelecter而不是createRef引用componentDidMount。到目前为止,它在盖茨比是有效的。

你检查过链接的文档了吗?在能够使用ref之前,您可能需要调用React.createRef。