javascript - React-google-maps 警告

标签 javascript reactjs

我最近开始学习 React,我想用 Google Maps API 构建一个 React 应用程序,所以我下载了 React-google-maps 包,但它的文档已经过时了。我有这个示例代码。控制台记录错误:

  1. process.env.ENV 未定义,假设为“prod”环境
  2. 通过主 React 包访问 PropTypes 已被弃用
  3. 通过主 React 包访问 createClass 已被弃用。

TL:DR 如何修复此代码

import React from "react";
import ReactDOM from "react-dom";
import { 
  withGoogleMap,
  GoogleMap,
  Marker,
  InfoWindow, 
} from "react-google-maps";

const MapInit = withGoogleMap(props => (
  <GoogleMap
    ref={props.onMapLoad}
    defaultZoom={1}
    defaultCenter={{ lat: -25.363882, lng: 131.044922 }}
  >
  </GoogleMap>
));
class MapContainer extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      markers: [
        {}
      ],
    };
    this.handleMapLoad = this.handleMapLoad.bind(this);
  }
  handleMapLoad(map) {
    this._mapComponent = map;
  }
  render() {
    return (
      <div style={{height: `100%`}}>
        <MapInit
          containerElement={
            <div style={{ height: `100%` }} />
          }
          mapElement={
            <div style={{ height: `100%` }} />
          }
          onMapLoad={this.handleMapLoad}
        />
      </div>
    );
  }
}

export default MapContainer;

最佳答案

这些是由库生成的,该库可能未更新为使用 class 而不是 createClass 并且正在从 React 导入 PropTypes。

您可以通过浏览到您的 node_modules 并检查源代码来验证这一点。这有点烦人,但您无能为力,只能发送拉取请求自行修复。 :)

关于javascript - React-google-maps 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44899819/

相关文章:

javascript - 如何在固定的 div 上强制滚动位置?

javascript - 如何使用 jQuery 检查单选按钮?

javascript - 在处理一些基本的添加时,令人难以置信的 javascript 失败!

javascript - 清除上次创建的计时器对象的超时

reactjs - 更新 React 上下文 : "x is not a function"

node.js - React - 作为 npm 包发布的组件之间的通信和路由

javascript - 以编程方式从 Contentful 数据创建 Gatsby 页面

javascript - 在 Firebase (AngularFire) 中存储 HTML,好还是坏?

javascript - 组件不会在路由更改时重新呈现 - React HashRouter

javascript - 使用变量在 React Native 中渲染 Unicode 字符