经过调试后,我发现页面加载时,React正在执行以下查询:
export default graphql(Query, {
options: (props) => ({
variables: {
start: props.start,
end: props.end
}
})
)(Comp);
来自服务器的错误是“错误请求”,这似乎是因为开始和结束为空,并且它们被分配为Float!当然,这些变量将为空。用户尚未输入值。
当我在UI中输入值并单击“提交”时,它工作正常。我只需要帮助弄清楚如何防止在页面加载时执行此查询。并且仅在单击提交按钮时执行。
答案 0 :(得分:2)
只需为skip
提供一个qraphql
函数:
export default graphql(Query, {
skip: ({ start, end }) => (!start || !end),
options: ({ start, end }) => ({
variables: { start, end }
})
})(Comp);