I have a mdx gatsby page with frontmatter defined.
---
title: About Me
path: /about
description: Some information about me.
---
# About Me
[Twitter](https://twitter.com/RainFire336)
I have configured a default layout in the gatsby-config.js
:
{
resolve: 'gatsby-plugin-mdx',
options: {
defaultLayouts: {
default: require.resolve("./src/components/page-layout.tsx")
},
gatsbyRemarkPlugins: [
'gatsby-remark-images',
{
resolve: 'gatsby-remark-prismjs',
options: {
showLineNumbers: true,
prompt: {
user: 'rain',
},
},
},
],
},
}
The layout tries to access the frontmatter using it's props:
import React from 'react';
import { Layout } from './layout';
import { Card } from './card';
import { Metadata } from './metadata';
interface Props {
children: React.ReactNode;
uri: string;
pageContext: { frontmatter: any };
}
export default function (p: Props) {
const { children, uri, pageContext } = p;
return (
<Layout>
<Metadata {...pageContext.frontmatter} url={uri} />
<Card style={{ width: '50%' }}>{children}</Card>
</Layout>
);
}
The problem is that frontmatter is always an empty object:
So to form a question. How do I get access to my frontmatter?