当前位置: 首页 > 面试题库 >

用React实现谷歌地图

居星阑
2023-03-14
问题内容

在这里反应新手,请忍受我:)希望这将很容易解决

目前,我只是想让地图显示在屏幕上,但是当我运行代码时,页面完全空白,甚至其他div也没有出现。这是我的代码,摘录如下:https
:
//gist.github.com/JoeyBodnar/f76c5d434d57c6cc6108513ad79d4cb7

需要注意的几件事:1)从项目目录中,我已经运行了npm install –save react-google-maps
2)使地图出现的代码是从这里获取的:https :
//github.com/tomchentw/react -谷歌地图

那我到底在做什么错呢?我的“ const GettingStartedGoogleMap”声明在错误的地方?还是我在div中做错了什么?

还请注意,如果我从该文件中删除了所有与Google Maps相关的代码,则一切正常。

任何帮助表示赞赏,谢谢

编辑,这是我的代码,即使硬编码高度也仍然显示空白屏幕:

 return (
     <GettingStartedGoogleMap
 containerElement={
    <div style={{ height: `400px` }} />
 }
 mapElement={
 <div style={{ height: `400px` }} />
 }
 onMapLoad={_.noop}
 onMapClick={_.noop}
 markers={markers}
 onMarkerRightClick={_.noop}
/>
  );

问题答案:

这是我先前回答的改进版本

我刚刚测试了您的代码,其中包含许多错误,未定义和未使用的变量!因此,您可以改用以下代码,这很简单(这将使您解决当前问题并显示地图!)

首先,安装必要的库:

npm install --save google-map-react
npm install --save prop-types

然后,您可以复制下面的全部内容:

import React, { Component } from 'react';
import GoogleMapReact from 'google-map-react';

const AnyReactComponent = ({ text }) => <div>{text}</div>;

class MyClass extends Component {
  constructor(props){
    super(props);

  }

  render() {
    return (
      <GoogleMapReact
        defaultCenter={this.props.center}
        defaultZoom={this.props.zoom}
        style={{height: '300px'}}
      >
        <AnyReactComponent
          lat={59.955413}
          lng={30.337844}
          text={'Google Map'}
        />
      </GoogleMapReact>
    );
  }
}
MyClass.defaultProps = {
  center: {lat: 59.95, lng: 30.33},
  zoom: 11
};

export default MyClass;


 类似资料:
  • 所以我看到了一个特殊的例外,我敢肯定的是谷歌地图的绘图代码。 我有一个片段,在那里我以编程方式添加了一个支持地图片段,然后我在其中操纵谷歌地图实例。 这是stacktrace: 我无法可靠地复制它(尽管这种情况经常发生),我已经查看了ReadWriteDirectByteBuffer和ShortToByteBufferAdapter,但没有任何东西突然出现在我面前。 有什么想法吗?

  • 我认为问题是我需要添加构建提示。我可以找到在哪里添加他们,但我不确定他们应该是什么格式。我也不知道要补充什么。我想我发现了一个帖子,说我需要添加Android.xapplication=Android:value=“Your Key”/>Android.xPermissions= 但我不确定构建提示条目表单中的格式是什么

  •        LSV默认的对谷歌影像进行了加载,如果需要加载其他的谷歌地图数据,可以通过LSV中直接点击即可加载。

  • 我正在尝试使用新的@react Google maps/api库访问Web应用程序中安装的Google Map的getBounds方法,该库取代了tomchentw不支持的react Google maps库。 与旧的react GoogleMaps不同,这个新库似乎无法访问此处定义的GoogleMap对象。根据您尝试访问Google Map对象的方式,您将获得以下两种情况之一: 1)简单地将re

  • 我已经用自动完成和谷歌地理编码应用编程接口实现了谷歌地方应用编程接口。问题是结果似乎不正确。 有时自动完成列表中的一些选择结果根本没有地理编码,我得到的只是状态ZERO_RESULTS。 我知道Google Autocomplete也使用Places,而Google Geocode只使用邮政编码,这可能会有一些问题,但我如何限制Autocomplete只提供邮政编码结果呢。