Graph 如何访问Apollo useMutaion响应
当我使用UsePantation钩子进行变异时,我可以console.log我的数据,但我不能将数据对象保存在localState中。我不知道我错过了什么。感谢您的帮助 我的代码如下:Graph 如何访问Apollo useMutaion响应,graph,apollo,react-apollo,Graph,Apollo,React Apollo,当我使用UsePantation钩子进行变异时,我可以console.log我的数据,但我不能将数据对象保存在localState中。我不知道我错过了什么。感谢您的帮助 我的代码如下: //模式文件 startTest(标识符:字符串):TestResponse 变异有效载荷如下所示: 类型TestResponse{ 错误代码:Int errorMessage:字符串 成功:布尔值 transactionId:ID 版本:Int } 在分解器中,我硬编码了以下数据返回: startTest(
//模式文件
startTest(标识符:字符串):TestResponse
变异有效载荷如下所示:
类型TestResponse{
错误代码:Int
errorMessage:字符串
成功:布尔值
transactionId:ID
版本:Int
}
在分解器中,我硬编码了以下数据返回:
startTest({identifier}){
log(“来自服务器的你好”);
返回{
错误代码:0,
errorMessage:null,
成功:没错,
交易ID:“d2984911-bbc4-4e6a-9103-96ca934f6ed3”,
版本:0,
};
},
在component文件夹中,我通过点击按钮触发了突变
const[StartTest,{加载,错误,数据}]=useCommutation(
启动防火阀测试,
{
未完成:({startFireDampersTest})=>
console.log(startFireDampersTest.success),
useState(startFireDampersTest.success)
},
{
onError:()=>console.log(“error!”),//从未被调用
}
);
console.log(结果);//未定义
如果(加载)返回加载…;
如果(错误)返回错误 );
if(data&&data.startFireDampersTest)
返回(
成功
const [isSuccess, setIsSuccess] = useState(false);
const [startTestt, { loading, error, data }] = useMutation(
START_FIRE_DAMPER_TEST,
{
onCompleted: ({ startFireDampersTest }) =>
console.log(startFireDampersTest.success),
setIsSuccess(startFireDampersTest.success)
},
{
onError: () => console.log("error!"), // never gets called
}
);
{JSON.stringify(data,null,2)}//我可以看到string对象,但是如何在组件中呈现对象的元素??
);
常量触发器测试=()=>{
startTest({变量:{标识符:“0000000”}});
};
返回(
单击以删除Buck
);
我需要访问从突变中返回的数据,以便以后使用。测试响应/负载与要更新的任何其他查询或类型无关。它只包含测试的状态和其他键值,我需要将它们保存在本地状态中,或者在组件中呈现它们。如果您的
onCompleted
中已经有一个useState,则只需正确编写即可。假设useState
是对React的useState
钩子的调用,那么您可能只需要将状态的初始化移动到组件