React MapboxGeocoder 未定义 no-undef

Tar*_*ziz 1 mapbox reactjs mapbox-gl mapbox-gl-js

一切都很好,但突然我得到了这个错误。我用谷歌搜索了很多次但没有解决方案。有人可以帮我吗? 在此输入图像描述

我用过的代码

import React, { Component } from 'react';
import MapboxGl from 'mapbox-gl/dist/mapbox-gl';
import '../App.css';

class MapContent extends Component {

    componentDidMount() {
        MapboxGl.accessToken = ACCESS_TOKEN;

        var map = new MapboxGl.Map({
            container: this.Mapcontainer,
            style: 'mapbox://styles/mapbox/streets-v9',
            center: [-74.50, 40], // starting position
            zoom: 9 // starting zoom
        });

        var geocoder = new MapboxGeocoder({
            accessToken: MapboxGl.accessToken
        });

        map.addControl(geocoder);
    }

    render() {
        return (
            <div className='MapContent' ref={(x) => { this.Mapcontainer = x }}>
            </div>
        )
    }
}

export default MapContent;
Run Code Online (Sandbox Code Playgroud)

Tar*_*ziz 8

得到答案了。我必须安装'@mapbox/mapbox-gl-geocoder'. 只需输入

npm install @mapbox/mapbox-gl-geocoder --save

那么 MapboxGeocoder 就可以正常工作了。