title: When override _app.js what is getInitialProps used for?
body: <p>what is this really do ?</p>
  
  <blockquote>
    <p>pageProps = await Component.getInitialProps(ctx)</p>
  </blockquote>
  
  <p>it looks "pageProps" this is just an empty object</p>
  
  <pre><code>import App, {Container} from 'next/app'
  import React from 'react'
  
  export default class MyApp extends App {
    static async getInitialProps ({ Component, router, ctx }) {
      let pageProps = {}
  
      if (Component.getInitialProps) {
        pageProps = await Component.getInitialProps(ctx)
      }
  
      return {pageProps}
    }
  
    render () {
      const {Component, pageProps} = this.props
      return &lt;Container&gt;
        &lt;Component {...pageProps} /&gt;
      &lt;/Container&gt;
    }
  }
  </code></pre>