2017-03-20 1 views
0

Ich versuche mit diesem reaktionsfreundlichen Wrapper zu arbeiten, geschrieben von https://github.com/alex3165/react-mapbox-gl.react-mapbox-gl Ereignispolygon klicken

Ich habe Probleme, wie zum Ereignis Listener zu Polygon hinzugefügt werden, das von geojson mit react-mapbox-gl generiert wurde. Hier ist mein Code:

import React from 'react' 
import ReactDOM from 'react-dom' 
import ReactMapboxGl, { GeoJSONLayer, Layer, Feature } from "react-mapbox-gl" 

const position = [106.822700,-6.174500] 

class MapView extends React.Component { 
    constructor(props) { 
    super(props); 

    this.state = { 
     geojson: {} 
    }; 
    } 

    _onClick =() => { 
    console.log('polygon click') 
    } 

    componentDidMount() { 
    let url = './json/poly.json' 
    fetch(url) 
    .then((response) => { 
    return response.json() 
    }) 
    .then((json) => { 
    this.setState({ 
     geojson: json 
    }) 
    }) 
    .catch((err) => { 
    //error 
    }) 
    } 

    render() { 
    <div> 
     <ReactMapboxGl 
      style="mapbox://styles/mapbox/streets-v8" 
      accessToken="YOUR-ACCESS-TOKEN" 
      center={position} 
      containerStyle={{ height: "100vh", width: "100%" }}> 

      <GeoJSONLayer 
       data={this.state.geojson} 
       fillPaint={{ 
       "fill-color": "#ff0000" 
       }}/> 
     </ReactMapboxGl> 
    </div> 
    } 
} 

ReactDOM.render(
    <MapView />, 
    document.getElementById("root") 
) 
+0

Hey Yasin, haben Sie jemals ein Lösung dafür? – romeboards

+0

Hallo @romeboards, wie unten vorgeschlagen, ich werde versuchen react-mapbox-gl^2.3. Jetzt unterstützen sie den Maus-Event-Handler für die GeoJson-Komponente. –

Antwort

Verwandte Themen