google-api-loader
A thin, Promise-returning helper for loading the Google JavaScript API.
This work is totaly based on load-google-maps-api, just needed something like that for GAPI client, nothing more, sorry ;)
- The Promise’s fulfilled callback is passed the
gapi
object - Optionally set a timeout, an API key, the language, and more
Usage
Example using import
:
More complex example using authentication and the Calendar API:
var gapi = undefined; { if status // Do something } ;
Why
Need to use Google API with Webpack in better way ... such as load-google-maps-api
API
const loadGoogleApi =
GoogleApi([options])
Returns a Promise.
- Fulfilled if loading was successful. The fulfilled callback is passed the
gapi
object. IfloadGoogleApi
is called multiple times on a page, the fulfilled callback will be passed the previously-loadedgapi
object. - Rejected if we weren’t able to load the Google API after
options.timeout
.
See Usage.
options
is an optional object literal:
Key | Description | Default |
---|---|---|
timeout |
Time in milliseconds before rejecting the Promise | 10000 |
auth.apiKey |
The API key to use | undefined |
auth.discoveryDocs |
An array of discovery doc URLs or discovery doc JSON objects | undefined |
auth.clientId |
The app's client ID, found and created in the Google Developers Console | undefined |
auth.scope |
The scopes to request, as a space-delimited string | undefined |
auth.listener |
Listener function (boolean) for sign in events |
undefined |
auth.timeout |
Time in milliseconds before rejecting the Promise when loading client:auth2 library |
5000 |
WARNING: If you use auth
dictionary then all undefined
fields/options are mandatory !
Installation
$ yarn add google-api-load