1 回答
TA贡献1815条经验 获得超13个赞
我会将您的组件结构更改为:
import React, { useState } from 'react'
import { graphql } from 'gatsby'
const YourPage = ({data}) => {
console.log('data is', data)
const [filters, setFilters] = useState({
type: "",
category: ""
});
//your calculations
return (
<div>
Your stuff
</div>
)
}
export const query = graphql`
query yourQueryName{
allStrapiHomes {
nodes {
type
category
}
}
}
`
export default YourPage
在您的代码中,在进行一些关键导入时,您丢失了 Gatsby 的一些内容。如果您使用 a staticQuery
,则需要为其添加渲染模式。可能看起来有点老套,最好使用useStaticQuery
Gatsby 提供的钩子或者添加页面查询(我的方法)。
我添加了页面查询。您的数据位于props.data.allStrapiHomes.nodes
,解构道具您省略了第一步,因此您的数据将位于data.allStrapiHomes.nodes
。如果在 Strapi 后端中这样设置,则和type
都将是一个数组。category
添加回答
举报