如何解决Apollo GraphQL传递对象
在GraphQL中,如何传递对象而不是字符串?
以Apollo网站上的代码为例,我做了一点改动:
import React,{ useState } from 'react';
import { useLazyQuery } from '@apollo/client';
function DelayedQuery() {
const [dog,setDog] = useState(null);
const [getDog,{ loading,data }] = useLazyQuery(GET_DOG_PHOTO);
if (loading) return <p>Loading ...</p>;
if (data && data.dog) {
setDog(data.dog);
}
const myObject = {
type: {
favors: [
tom: true,bill: false
]
}
}
return (
<div>
{dog && <img src={dog.displayImage} />}
<button onClick={() => getDog({ variables: { theObject: myObject } })}>
Click me!
</button>
</div>
);
}
我相信React试图将对象解析为字符串,但是(如错误消息所解释的那样)JSON.stringify cannot serialize cyclic structures
。
我该怎么办?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。