我定义了以下gQL,
import gql from 'graphql-tag'
const SIGN_UP_QUERY = gql`
query {
signUpForm @client {
firstName
email
password
}
}
`
我将它与类似的react-apollo查询一起使用
<Query query={SIGN_UP_QUERY}>
{({
data: {
signUpForm: { firstName }
},
loading
}) => { ...... }}
</Query>
与此同时,我遇到了一个错误Cannot read property 'firstName' of undefined
我在这里做错什么了?
答案 0 :(得分:0)
您是否检查数据是否已加载?
if (loading) return "data not fetched yet";
return <p>{ firstName }</p>;
答案 1 :(得分:0)
您要在data
变量存在/加载之前对其进行解构。您应该等到loading = false才能尝试访问数据。
答案 2 :(得分:0)
由于您正在分解变量,因此需要确保data
以及data.signUpForm
为空或未定义。
这里是您的情况的example。
有三个问题可以使data/data.signUpForm
不是对象:
undefined
要解决您的问题,