netlify gatsby - markdownRemark для виджета списка - PullRequest
0 голосов
/ 20 октября 2018

Я добавил новую страницу в файл config.yml из репозитория gatsby netlify :

  - name: "pages"
    label: "Pages"
    files:
      - file: "src/pages/CV/index.md"
        label: "CV"
        name: "CV"
        fields:
          - {
              label: "Template Key",
              name: "templateKey",
              widget: "hidden",
              default: "cv-page",
            }
          - { label: "Name", name: "name", widget: "string" }
          - { label: "Portrait", name: "portrait", widget: "image" }
          - label: "Categories"
            name: "categories"
            widget: "list"
            fields:
              - { label: Title, name: title, widget: string }
              - { label: "Body", name: "body", widget: "markdown" }

И затем я запрашиваю данные на моей cv-страницеcomponent:

export const cvPageQuery = graphql`
  query CVPage($id: String!) {
    markdownRemark(id: { eq: $id }) {
      frontmatter {
        name
        portrait
        categories {
          title
          body
        }
      }
    }
  }
`;

Теперь я хотел бы gatsby-transformer-note для анализа тела категорий с уценкой в ​​HTML - но запрос просто возвращает строку уценки (например, body: "* one↵* two↵* three↵* four").

Раньше, когда у меня был виджет уценки непосредственно на странице в виде поля, я просто запрашивал html вне frontmatter, и данные были бы там.Почему это не работает с вложенным виджетом в списке?

Спасибо за помощь.

РЕДАКТИРОВАТЬ: репозиторий с моим кодом для справки

1 Ответ

0 голосов
/ 20 октября 2018

Преобразование gatsby-transformer-remark преобразует только уценку в теле вашего файла .md.Он не знает, как преобразовать поля в вашем frontmatter.

pages/CV/index.md

---
templateKey: cv-page
name: Miha Šušteršič
portrait: /img/headshot.png
categories:
  - body: |-
      * one
      * two
      * three
      * four
    title: Work experience
  - body: |-
      * one
      * two 
      * three
      * four
    title: Education and training
---

Из запроса:

{
  "markdownRemark": {
    "html": "",
    "frontmatter": {
      "name": "Miha Šušteršič",
      "portrait": "/img/headshot.png",
      "categories": [{
          "title": "Work experience",
          "body": "* one\n* two\n* three\n* four"
        },
        {
          "title": "Education and training",
          "body": "* one\n* two \n* three\n* four"
        }
      ]
    }
  }
}

Как видно из запросаРезультаты выше, ваш HTML пуст, потому что тело пусто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...