async process ({
    computed,
    markdown,
    enhancers = [],
    preRender = {}
  }) {
    if (this._filePath) {
      logger.developer(`static_route`, chalk.cyan(this.path))
      this._content = await fs.readFile(this._filePath, 'utf-8')
    } else if (this._content) {
      logger.developer(`static_route`, chalk.cyan(this.path))
      this._filePath = await this._context.writeTemp(`temp-pages/${this.key}.md`, this._content)
    } else {
      logger.developer(`dynamic_route`, chalk.cyan(this.path))
    }

    if (this._content) {
      if (this._filePath.endsWith('.md')) {
        const { excerpt, data, content } = parseFrontmatter(this._content)
        this._strippedContent = content
        Object.assign(this.frontmatter, data)

        // infer title
        const title = inferTitle(this.frontmatter, this._strippedContent)
        if (title) {
          this.title = title
        }

        // extract headers
        const headers = extractHeaders(
          this._strippedContent,
          this._extractHeaders,
          markdown
        )

        if (headers.length) {
          this.headers = headers
        }

        if (excerpt) {
          const { html } = markdown.render(excerpt, {
            frontmatter: this.frontmatter,
            relativePath: this.relativePath
          })
          this.excerpt = html
        }
      } else if (this._filePath.endsWith('.vue')) {
        const { data = {}} = parseVueFrontmatter(this._content)
        // When Vue SFCs are source files, make them as layout components directly.
        this.frontmatter = Object.assign({
          layout: this.key
        }, data)
      }
    }

    // resolve i18n
    computed.setPage(this)
    this._computed = computed
    this._localePath = computed.$localePath

    await this.enhance(enhancers)
    this.buildPermalink()
  }
Process a page.

  1. If it's a page pointing to a md file, this method will try
     to resolve the page's title / headers from the content.
  2. If it's a pure route. this method will only enhance it.

@api public