Graph 如何访问Apollo useMutaion响应

Graph 如何访问Apollo useMutaion响应,graph,apollo,react-apollo,Graph,Apollo,React Apollo,当我使用UsePantation钩子进行变异时,我可以console.log我的数据,但我不能将数据对象保存在localState中。我不知道我错过了什么。感谢您的帮助 我的代码如下: //模式文件 startTest(标识符:字符串):TestResponse 变异有效载荷如下所示: 类型TestResponse{ 错误代码:Int errorMessage:字符串 成功:布尔值 transactionId:ID 版本:Int } 在分解器中,我硬编码了以下数据返回: startTest(

当我使用UsePantation钩子进行变异时,我可以console.log我的数据,但我不能将数据对象保存在localState中。我不知道我错过了什么。感谢您的帮助

我的代码如下:

//模式文件
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
钩子的调用,那么您可能只需要将状态的初始化移动到组件