Skip to content

Commit 71e29cd

Browse files
thibaultboursierTimer
authored andcommitted
Update Relay Modern example (vercel#10150)
* chore(npm): update dependencies * fix(relay): move GraphQL query outside pages folder * refactor(react): destructure props * refactor(react): remove unused key and simplify syntax
1 parent b72b8e2 commit 71e29cd

File tree

5 files changed

+38
-43
lines changed

5 files changed

+38
-43
lines changed

examples/with-relay-modern/components/BlogPostPreview.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
import React from 'react'
22
import { createFragmentContainer, graphql } from 'react-relay'
33

4-
const BlogPostPreview = props => {
5-
return <div key={props.post.id}>{props.post.title}</div>
6-
}
4+
const BlogPostPreview = ({ post }) => <li>{post.title}</li>
75

86
export default createFragmentContainer(BlogPostPreview, {
97
post: graphql`

examples/with-relay-modern/components/BlogPosts.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@ import React from 'react'
22
import { createFragmentContainer, graphql } from 'react-relay'
33
import BlogPostPreview from './BlogPostPreview'
44

5-
const BlogPosts = props => {
6-
return (
7-
<div>
8-
<h1>Blog posts</h1>
9-
{props.viewer.allBlogPosts.edges.map(({ node }) => (
5+
const BlogPosts = ({ viewer }) => (
6+
<div>
7+
<h1>Blog posts</h1>
8+
<ul>
9+
{viewer.allBlogPosts.edges.map(({ node }) => (
1010
<BlogPostPreview key={node.id} post={node} />
1111
))}
12-
</div>
13-
)
14-
}
12+
</ul>
13+
</div>
14+
)
1515

1616
export default createFragmentContainer(BlogPosts, {
1717
viewer: graphql`
Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,31 @@
11
{
22
"name": "with-relay-modern",
3-
"version": "3.0.3",
3+
"version": "3.0.4",
44
"description": "Example of Next.js with Relay Modern SSR",
55
"scripts": {
66
"graphcool-init": "graphcool init --schema schema/init-schema.graphql",
77
"dev": "next",
88
"build": "next build",
99
"start": "next start",
1010
"relay": "relay-compiler --src ./ --exclude '**/.next/**' '**/node_modules/**' '**/test/**' '**/__generated__/**' --exclude '**/schema/**' --schema ./schema/schema.graphql",
11-
"schema": "graphql get-schema dev"
11+
"schema": "graphql get-schema -e dev"
1212
},
1313
"author": "",
1414
"license": "ISC",
1515
"dependencies": {
16-
"dotenv": "^4.0.0",
17-
"dotenv-webpack": "^1.5.4",
18-
"graphql": "^14.1.1",
16+
"dotenv": "^8.2.0",
17+
"dotenv-webpack": "^1.7.0",
18+
"graphql": "^14.5.8",
1919
"isomorphic-unfetch": "^3.0.0",
2020
"next": "latest",
21-
"react": "^16.7.0",
22-
"react-dom": "^16.7.0",
23-
"react-relay": "^5.0.0"
21+
"react": "^16.12.0",
22+
"react-dom": "^16.12.0",
23+
"react-relay": "^8.0.0"
2424
},
2525
"devDependencies": {
26-
"babel-plugin-relay": "^2.0.0",
27-
"graphcool": "^1.2.1",
28-
"graphql-cli": "^1.0.0-beta.4",
29-
"relay-compiler": "^2.0.0"
26+
"babel-plugin-relay": "^8.0.0",
27+
"graphcool": "^1.4.0",
28+
"graphql-cli": "^3.0.14",
29+
"relay-compiler": "^8.0.0"
3030
}
3131
}
Lines changed: 8 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,14 @@
1-
import React, { Component } from 'react'
2-
import { graphql } from 'react-relay'
1+
import React from 'react'
32
import withData from '../lib/withData'
43
import BlogPosts from '../components/BlogPosts'
4+
import indexPageQuery from '../queries/indexPage'
55

6-
class Index extends Component {
7-
static displayName = `Index`
8-
9-
render(props) {
10-
return (
11-
<div>
12-
<BlogPosts viewer={this.props.viewer} />
13-
</div>
14-
)
15-
}
16-
}
6+
const Index = ({ viewer }) => (
7+
<div>
8+
<BlogPosts viewer={viewer} />
9+
</div>
10+
)
1711

1812
export default withData(Index, {
19-
query: graphql`
20-
query pages_indexQuery {
21-
viewer {
22-
...BlogPosts_viewer
23-
}
24-
}
25-
`,
13+
query: indexPageQuery,
2614
})
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { graphql } from 'react-relay'
2+
3+
export default graphql`
4+
query indexPage_indexQuery {
5+
viewer {
6+
...BlogPosts_viewer
7+
}
8+
}
9+
`

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy