mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
4b257483e2
* Add minimal apollo example * Update apollo example README * Update apollo example demo link in README * Fix button styles * Fix show more button * Alias demo url * Include the data field on the Apollo store when hydrating * Revert * Include the data field on the Apollo store when hydrating per tpreusse's suggestion. * Add example to faq section in README * Sort by newest; Add active state to buttons * Make optimization suggestions * Use process.browser; inline props
23 lines
580 B
JavaScript
23 lines
580 B
JavaScript
import ApolloClient, { createNetworkInterface } from 'apollo-client'
|
|
|
|
export const initClient = (headers) => {
|
|
const client = new ApolloClient({
|
|
ssrMode: !process.browser,
|
|
headers,
|
|
dataIdFromObject: result => result.id || null,
|
|
networkInterface: createNetworkInterface({
|
|
uri: 'https://api.graph.cool/simple/v1/cixmkt2ul01q00122mksg82pn',
|
|
opts: {
|
|
credentials: 'same-origin'
|
|
}
|
|
})
|
|
})
|
|
if (!process.browser) {
|
|
return client
|
|
}
|
|
if (!window.APOLLO_CLIENT) {
|
|
window.APOLLO_CLIENT = client
|
|
}
|
|
return window.APOLLO_CLIENT
|
|
}
|