Я экспериментирую с Contentful и Gatsby. Цель состоит в том, чтобы создать веб-сайт, на котором редакторы могут создавать целевые страницы из разделов. У меня есть тип содержимого, представляющий оболочку страницы. Этот тип контента имеет поле Разделы, тип которого - Ссылки (многие). С помощью этого поля я могу связать несколько типов контента. Эти связанные типы контента отображаются один под другим. Редактор может изменить их порядок перетаскиванием. См. Снимок экрана:
Однако этот порядок не отображается, когда я визуализирую эти типы контента. По умолчанию порядок основан на дате создания связанного содержимого. В игровой площадке graphql есть несколько параметров сортировки, но ни один из них не отражает мой фактический порядок перетаскивания в оболочке страницы. Вот мой запрос graphql и код для сопоставления и рендеринга разделов
import ...
const Sections = () => {
const data = useStaticQuery(
graphql`
query Sections {
allContentfulSection {
edges {
node {
id
title
heroImage {
fluid(maxWidth: 750) {
...GatsbyContentfulFluid
}
}
}
}
}
}
`
)
return (
<div className="sections">
{data.allContentfulSection.edges.map(edge => {
return (
<div className="section" key={edge.node.id}>
{edge.node.heroImage && (
<Img
className="featured"
fluid={edge.node.heroImage.fluid}
alt={edge.node.title}
/>
)}
<h2>
{edge.node.title}
</h2>
</div>
)
})}
</div>
)
}
export default Sections
Может ли кто-нибудь сказать мне запрос graphql, который упорядочивает связанные ссылки, как будто они появляются в содержимом оболочки родительской страницы? Это должно быть возможно, не так ли? Почему мы должны иметь возможность переупорядочивать ссылки с помощью перетаскивания в содержательном веб-приложении, если это не влияет ни на что на вашем визуализированном веб-сайте?