2017-11-07 14 views
2

저는 Gatsby JS를 사용하고 있습니다. Markdown 파일을 사용하여 blogposts를 생성하는 블로그를 만들려고합니다. 내 blogpost 템플릿에 다른 섹션이 있습니다.이 섹션은 내 blogpost 템플릿의 다른 섹션에 넣고 싶습니다. 그러나 Markdown 파일에서 어떻게 개별적으로 액세스 할 수 있는지 잘 모르겠습니다.GatsbyJS : 마크 다운 파일 (GraphQL)에 저장된 블로그 게시물의 다른 섹션에 액세스

나는 전체 텍스트를 얻는 방법과 프런트 매터의 분리 된 부분을 잡는 방법을 알고 있지만 필자의 텍스트에서 '재료'정보 만 얻는 방법을 모르겠습니다.

지금 당장 저는 블로그 포스트의 여러 섹션을 frontmatter에 직접 포함 시켜서이 문제를 해결하고 있습니다. 그래야 graphQL을 사용하여 이러한 섹션에 액세스 할 수 있습니다. 그러나이 문제는 frontmatter가 사용되기로되어있는 것이 아닙니다. .

Graphdown 쿼리에서 이러한 개별 부품을 사용할 수 있도록 내 Markdown 텍스트의 일부를 섹션으로 분할하는 방법이 있습니까?

--- 
title: "Cake" 
date: "09-12-2017" 
post: "2" 

Name: "Chocolate Cake" 
Author: "DJ" 
Source: "Book" 

Ingredients: "milk, dark chocolate, coca cola, skittles, tea, liquorice" 

Subtitle1: "First Heading |" 
Subtitle2: "Second Heading |" 
Subtitle3: "Third Heading |" 

Text1: "first text" 
Text2: "second text" 
Text3: "third text" 
--- 

My excerpt goes here 

나는 이런 식으로 뭔가하고 싶으면 :

--- 
title: "Cake" 
date: "09-12-2017" 
post: "2" 
--- 

Name: " Chocolate Cake" 
Author: "DJ" 
Source: "Book" 

Ingredients: "milk, dark chocolate, coca cola, skittles, tea, liquorice" 

Subtitle1: "First Heading |" 
Subtitle2: "Second Heading |" 
Subtitle3: "Third Heading |" 

Text1: "first text" 
Text2: "second text" 
Text3: "third text" 

Excerpt: my excerpt goes here 

을하고 어떻게 든 블로그 게시물 내부에 사용하는 정보의 이러한 별도의 조각을 잡을 수

내가 가진 무엇 주형.

답변

1

Gatsby의 데이터 레이어에는 데이터에 맞춤 변환을 수행 할 수있는 후크가 있습니다. 마크 다운 파일을 구조화 된 필드로 분할하는 것과 같습니다.

은 이렇게 당신의 gatsby-node.js 파일에 onCreateNode을 구현하고 인하 파일을 구문 분석하고 createNodeField

+2

가 답장을 보내 주셔서 감사로 MarkdownRemark 노드에 필드를 추가하려면! onCreateNode를 gatsby-node.js에 구현하고 createNodeField가있는 MarkdownRemark 노드에 필드를 추가했습니다. 그런 다음 템플릿 -post.js 파일에 액세스했습니다. createNodeField의 'value'매개 변수에서 노드 필드 값을 얻고 있다는 것을 알고 있습니다.이 매개 변수는 필자가 작성한 일부 텍스트입니다. 그러나 node 필드의 값을 특정 div와 같은 markdown 파일의 특정 부분으로 지정하려면 어떻게 내 markdown 파일을이 섹션으로 구분하고 각 노드 필드 값에 연결시킬 수 있습니까? – user74843