mirror of
https://github.com/terribleplan/next.js.git
synced 2024-01-19 02:48:18 +00:00
d03ce5386d
* Define dependencies & NPM stuff for the example * Setup Babel preset * Add sources of working version of example * Indicate ajax loading state * Add readme file * Remove unneeded .babelrc
31 lines
620 B
JavaScript
31 lines
620 B
JavaScript
import React from 'react'
|
|
import { fetchUserRepos } from '../githubApi'
|
|
import provideStateFactory from '../provideState'
|
|
|
|
export default (Page) => {
|
|
const App = ({ serverState }) => {
|
|
const withState = provideStateFactory(serverState)
|
|
const PageWithState = withState(Page)
|
|
|
|
return <PageWithState />
|
|
}
|
|
|
|
App.getInitialProps = async () => {
|
|
const username = 'arunoda'
|
|
const page = 1
|
|
const repos = await fetchUserRepos(username, page)
|
|
|
|
return {
|
|
serverState: {
|
|
githubReposList: {
|
|
username,
|
|
page,
|
|
repos
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return App
|
|
}
|