reactjs - 等待 useLazyQuery 响应
问题描述
我需要在按下提交按钮时调用查询,然后处理响应。
我需要这样的东西:
const [checkEmail] = useLazyQuery(CHECK_EMAIL)
const handleSubmit = async () => {
const res = await checkEmail({ variables: { email: values.email }})
console.log(res) // handle response
}
尝试#1:
const [checkEmail, { data }] = useLazyQuery(CHECK_EMAIL)
const handleSubmit = async () => {
const res = await checkEmail({ variables: { email: values.email }})
console.log(data) // undefined the first time
}
提前致谢!
解决方案
这对我有用:
const { refetch } = useQuery(CHECK_EMAIL, {
skip: !values.email
})
const handleSubmit = async () => {
const res = await refetch({ variables: { email: values.email }})
console.log(res)
}
推荐阅读
- vue.js - 调度 VUE 的 VUEX 响应
- android-recyclerview - 如何在回收站视图中准确显示自定义对话框?
- express - 在后端使用“站点地图”模块为站点地图制作路线后,下一步该怎么做才能在前端发现?
- mongodb - MongoDB - $geoNear 和 includeLocs 在同一文档中有多个匹配项
- ios - Xcode 和 swift 加载默认相机视图
- reactjs - MenuBar 中 menuItem 的 React Animation 不起作用
- javascript - 如何使 HTML 按钮连接到 HTML5 Canvas 的 Javascript 函数以使 Spaceship Fire
- spring-boot - Cloud Run:部署 spring docker 镜像导致错误;无法启动并监听 PORT 环境变量定义的端口
- jwt - 保护 webapi 的 Identityserver4 不起作用
- php - 您的文件超过了该网站的最大上传大小:64MB。当我将我的网站本地主机上传到实时服务器时,我会向我展示