UNPKG

974 BJavaScriptView Raw
1const {createFilePath} = require('gatsby-source-filesystem')
2const path = require('path')
3
4exports.onCreateNode = ({node, getNode, actions}) => {
5 const {createNodeField} = actions
6 if (node.internal.type === 'MarkdownRemark') {
7 const slug = createFilePath({node, getNode, basePath: 'content', trailingSlash: false})
8 createNodeField({
9 node,
10 name: 'slug',
11 value: slug
12 })
13 }
14}
15
16exports.createPages = ({graphql, actions}) => {
17 const {createPage} = actions
18 return graphql(`
19 {
20 allMarkdownRemark {
21 edges {
22 node {
23 id
24 fields {
25 slug
26 }
27 html
28 }
29 }
30 }
31 }
32 `).then(result => {
33 result.data.allMarkdownRemark.edges.forEach(({node}) => {
34 createPage({
35 path: node.fields.slug,
36 component: path.resolve('./src/templates/Page.js'),
37 context: {
38 slug: node.fields.slug
39 }
40 })
41 })
42 })
43}