mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
39 lines
884 B
JavaScript
39 lines
884 B
JavaScript
|
import React, { Component } from 'react'
|
||
|
import { graphql } from 'react-relay'
|
||
|
import withData from '../lib/withData'
|
||
|
import BlogPosts from '../components/BlogPosts'
|
||
|
|
||
|
class Index extends Component {
|
||
|
static displayName = `Index`
|
||
|
|
||
|
static async getInitialProps (context) {
|
||
|
let { after, before, first, last } = context.query
|
||
|
|
||
|
if (last === undefined) {
|
||
|
first = 2
|
||
|
}
|
||
|
|
||
|
return {
|
||
|
relayVariables: { after, before, first, last }
|
||
|
}
|
||
|
}
|
||
|
|
||
|
render (props) {
|
||
|
return (
|
||
|
<div>
|
||
|
<BlogPosts viewer={this.props.viewer} relayVariables={this.props.relayVariables} />
|
||
|
</div>
|
||
|
)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export default withData(Index, {
|
||
|
query: graphql`
|
||
|
query pages_indexQuery($after: String, $before: String, $first: Int, $last: Int) {
|
||
|
viewer(after: $after, before: $before, first: $first, last: $last) {
|
||
|
...BlogPosts_viewer
|
||
|
}
|
||
|
}
|
||
|
`
|
||
|
})
|