react-static
Version:
A progressive static site generator for React
33 lines (27 loc) • 717 B
JavaScript
import React from 'react'
import ReactDOM from 'react-dom'
import { AppContainer } from 'react-hot-loader'
// Your top level component
import App from './App'
// Export your top level component as JSX (for static rendering)
export default App
// Render your app
if (typeof document !== 'undefined') {
const renderMethod = module.hot ? ReactDOM.render : ReactDOM.hydrate || ReactDOM.render
const render = Comp => {
renderMethod(
<AppContainer>
<Comp />
</AppContainer>,
document.getElementById('root'),
)
}
// Render!
render(App)
// Hot Module Replacement
if (module.hot) {
module.hot.accept('./App', () => {
render(require('./App').default)
})
}
}