google-maps-reactを使用して反応し、地図上の一部のデータを表示しています。マーカーがクリックまたはホバリングされたときにツールチップを表示します。そのためには、私はgoogle-maps-reactに付属の 'InfoWindown'コンポーネントを使うことができると思うが、 'nullのプロパティ'小道具を読むことができないというエラーが出る。ここでUncaught TypeError:google-mapsと反応してnullのプロパティ 'props'を読み取ることができません
は私のコード..です
import React, { Component } from 'react';
import Map, { Marker, InfoWindow } from 'google-maps-react';
export default class GoogleMap extends Component {
constructor(props) {
super(props);
this.state = {
showingInfoWindow: false,
activeMarker: {},
selectedPlace: {}
};
this.renderTrucks = this.renderTrucks.bind(this);
this.onMarkerClick = this.onMarkerClick.bind(this);
}
onMarkerClick(props, marker, e) {
this.setState({
selectedPlace: props,
activeMarker: marker
});
}
renderTrucks() {
if (this.props.list.length === 0) {
return;
}
return this.props.list.map((truckInfo) => {
return (<Marker
key={truckInfo.objectid}
name={truckInfo.applicant}
onClick={this.onMarkerClick}
position={{lat:truckInfo.latitude, lng:truckInfo.longitude}} />
);
});
}
render() {
return (
<Map google={window.google}
className={'map'}
style={{width: '50%', height: '80%', position: 'relative'}}
zoom={13}>
{this.renderTrucks()}
<InfoWindow
marker={this.state.activeMarker}
visible={this.state.showingInfoWindow}>
<p>{this.state.selectedPlace.name}</p>
</InfoWindow>
</Map>
);
}
}
私はすべての私のコールバック関数は罰金だと思いますが、「情報ウィンドウ」コンポーネントが私に迷惑を与えるものであると私には思えます。誰もこの事を使う方法を知っていますか?
は、私は問題がonClick={this.onMarkerClick}
であると仮定し、
どの行でエラーが発生しますか?コンソールを確認すると、それは言う必要があります。 –
私はbundle.jsを見て、それは 'var props = _assign({}、element.props);'私はそれが何であるかを本当に理解していません。それはウェブパックのことだと私に言います。 – ckim16
あなたのコードのどの行がエラーを投げますか?割り当てについて:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign – nightlyop