当组件安装在React中时包括google maps脚本

时间:2018-10-25 05:16:47

标签: javascript reactjs google-maps

我在应用程序中使用React-geosuggest library,它要求我在应用程序的html页面中包含google maps脚本标签。但是,我不希望这样,因为我希望仅在安装组件时才包含脚本。

我尝试在componentDidMount函数中创建脚本,但是没有运气。

componentDidMount() {
    const script = document.createElement('script');

    script.src =
      'https://maps.googleapis.com/maps/api/js?key=AIzaSyAwyph7a_yiJUZZeR4XZy2gwFSUEDCDYY8&libraries=places';
    script.async = true;

    document.body.appendChild(script);
  }

当我尝试在组件中使用它时,应用程序抱怨google is not defined

<Geosuggest
        onFocus={this.onFocus}
        onBlur={this.onBlur}
        onChange={this.onChange}
        onSuggestSelect={this.onSuggestSelect}
        onSuggestNoResults={this.onSuggestNoResults}
        location={new google.maps.LatLng(53.558572, 9.9278215)}
        radius={20}
/>

有一种方法可以在组件安装时包含google maps脚本,而不是将其包含在index.html中。

谢谢。

0 个答案:

没有答案