Я возился с Gatsby JS, используя WP в качестве бэкэнда, и пока все хорошо. Теперь я пытался открыть меню, которое для основных пунктов меню работает так, как ожидалось. То, что я не могу действительно обернуть мою голову, - то, как втянуть подменю.
Единственной связанной вещью, которую я нашел, была https://github.com/gatsbyjs/gatsby/issues/2426, которая дает мне подменю, если я регистрирую данные. Просто не могу заставить их попасть в меню.
Вот мой запрос в layouts / index.js:
export const query = graphql`
query LayoutQuery {
allWordpressWpApiMenusMenusItems {
edges {
node {
name
count
items {
order
title
url
wordpress_children {
wordpress_id
title
url
}
}
}
}
}
}
`
Это мой компонент меню:
class MainMenu extends Component {
render(){
const data = this.props.menu.allWordpressWpApiMenusMenusItems.edges["0"].node.items
console.log(data)
return(
<div>
<h1>Menu</h1>
<ul>
{data.map((item) =>
<li key={item.object_slug}>
<Link to={item.url}>
{item.title}
</Link>
</li>
)}
</ul>
</div>
)
}
}
export default MainMenu
Я пытался поиграться с вариациями
{item.children["0"].wordpress_children.title}
но просто не могу заставить его работать: / Любые идеи или указатели будут высоко оценены!