with-google-sheets
A higher-order component to retrieve data from Google Sheets.
Usage
withGoogleSheets()
Given the config
and ranges
(and optional mapValuesToProps
), the returned higher-order component will fetch the requested ranges from the configured Google Sheet.
With the exception of sheetId
, all properties in the config
parameter are sent to gapi.client.init(args)
. The default values for the config
parameter are:
discoveryDocs: 'https://sheets.googleapis.com/$discovery/rest?version=v4' scope: 'https://www.googleapis.com/auth/spreadsheets.readonly'
The resulting higher-order component will use the batchGet()
method to request all the ranges
at once.
Once the values in the given ranges
are retrieved, they will be passed into the mapValuesToProps
. By default the higher-order component will store the retrieved values under the values
prop.
In addition to the props created by the mapValuesToProps
parameter, the resulting higher-order component will pass along several other props:
authorizing: boolean initializing: boolean loading: boolean
The authorizing
, initializing
, and loading
props represent the state of the underlying Google Sheets API request.
Usage example:
;;; const withAnimals = ; const withLoadingIndicator = ; const withSignInButton = ; const List = <ul> items </ul>; withAnimals withLoadingIndicator withSignInButtonList;
Installation
The with-google-sheets
package is available on npm:
npm install with-google-sheets --save
Ensure that the Google API client is available in the global
namespace. For example, via a script tag:
See Also
License
MIT