每当我导入这个@ react-google-maps库时,我都会收到此错误。任何人都可以帮我解决这个问题吗?
这是我的组件 -
const {withScriptjs, withGoogleMap, GoogleMap, Marker} = require('react-google-maps');
const VenueMap = React.createClass({
getInitialState() {
const {eventData} = this.props;
const stateObj = {
position: {
lat: eventData.venue.latitude,
lng: eventData.venue.longitude,
},
defaultZoom: 17
};
return stateObj;
},
render: function () {
const {state} = this;
const MapComponent = compose(
withProps({
googleMapURL: GOOGLE_MAP.mapURL,
loadingElement: <div style={{height: `100%`}}/>,
containerElement: <div style={{height: `300px`, marginBottom: `30px`}}/>,
mapElement: <div style={{height: `100%`}}/>
}),
withScriptjs, withGoogleMap
)(props => (
<GoogleMap
defaultZoom={state.defaultZoom}
defaultCenter={state.position}>
{props.isMarkerShown && <Marker position={state.position}/>}
</GoogleMap>
));
return (
<div id="venuelocation" className="contents-wrapper">
<div className="orgname" style={{paddingBottom: '20px'}}>Venue Location</div>
<MapComponent isMarkerShown={true}/>
</div>
);
}
});
我正在使用react 16.3.2 reactjs版本。
答案 0 :(得分:0)
两件事。
1-您将React.CreateClass与React ^ 16一起使用是很奇怪的,因为它已根据本文删除: React Class being Removed
2 - 我使用扩展ES6功能在沙盒上尝试了你的代码,它适用于我,实际上我不得不硬编码一些东西,但一切都在加载,虽然我没有钥匙打开地图api,看看这里。 https://codesandbox.io/s/rjrzvlw36o
我的猜测:我认为你在某个地方缺少一个super(),下次添加错误的堆栈会很有帮助,所以我们可以看看特别是某些东西是否会引发错误。