1
0
Fork 0
mirror of https://github.com/terribleplan/next.js.git synced 2024-01-19 02:48:18 +00:00
next.js/examples/with-apollo-and-redux
Li Weinan 9b53d007e7 [update example - with-apollo-and-redux] pin dependencies (#3130)
* update dependnecies

* keep next version as `latest` and depend on `react@^16.0.0`
2017-10-19 14:42:24 +02:00
..
components Merge master into v3-beta. 2017-07-06 12:24:31 +05:30
lib Merge master into v3-beta. 2017-07-06 12:24:31 +05:30
pages Create separate Apollo example without Redux integration (#1483) 2017-03-30 11:21:13 -07:00
package.json [update example - with-apollo-and-redux] pin dependencies (#3130) 2017-10-19 14:42:24 +02:00
README.md Clarify usage of connect in README.md (#2845) 2017-08-27 20:56:52 +02:00

Deploy to now

Apollo & Redux Example

How to use

Download the example or clone the repo:

curl https://codeload.github.com/zeit/next.js/tar.gz/master | tar -xz --strip=2 next.js-master/examples/with-apollo-and-redux
cd with-apollo-and-redux

Install it and run:

npm install
npm run dev

Deploy it to the cloud with now (download):

now

The idea behind the example

By default, Apollo Client creates its own internal Redux store to manage queries and their results. If you are already using Redux for the rest of your app, you can have the client integrate with your existing store instead, which is what this example does. This example is identical to the with-apollo with the exception of this Redux store integration.

Note that you can acesss the redux store like you normally would using react-redux's connect as per here. Here's a quick example:

const mapStateToProps = state => ({
  location: state.form.location,
});

export default withData(connect(mapStateToProps, null)(Index));

connect must go inside withData otherwise connect will not be able to find the store.