当前位置: 首页 > 知识库问答 >
问题:

使用apollo的React.js查询graphql-错误:对象作为React子对象无效

邵城
2023-03-14

我在使用apollo查询graphqlendpoint时遇到了React.js问题。下面是有问题的代码。

class ChecklistSummaryTime extends Component {
constructor(props) {
    super(props);
    this.state = {
       data: [],
       sitePath: window.location.pathname
    }
 }

 render() {
     return(
        <ApolloProvider client={getGraphqlClient()}>
            <Query query={gql`
                {
                    all_checklist_time (checklist_type: "backup", order_by: "check_year check_month", 
                            sort_order: "desc desc", group_by: "check_month check_year") {
                            quarter,
                            month,
                            year
                    }
                }
            `}>
            {({ loading, error, data }) => {
                if (loading) return "Loading...";
                if (error) return `Error! ${error.message}`;
                console.log(data);
                return data;
            }}
            </Query>
        </ApolloProvider>
     );
 }}

它的错误是“error:对象作为React子对象无效(found:object with keys{all_checklist_time})。如果要呈现子集合,请使用数组。”

共有1个答案

江渊
2023-03-14

您看到的错误意味着return data正在返回一个对象,该对象不是有效的React子对象。您应该将其转换为数组、文本或组件。如果all_checklist_time是数组,则只需返回data.all_checklist_time

 类似资料:
  • 问题内容: 我正在尝试使用用户代理将json设置为一种状态,但出现错误: 未捕获的不变违规:对象作为React子对象无效(找到:具有键{…}的对象)。如果您打算渲染孩子的集合,请使用数组代替,或者使用React附加组件中的createFragment(object)包装对象。 设置状态的方法: 服务 杰森 问题答案: 您无法执行此操作:由于您的错误提示您尝试执行的操作无效。您正在尝试将整个数组呈现

  • 问题内容: 请帮我。我不知道为什么这段代码不起作用。 它给我一个错误:“对象作为React子对象无效(找到:带有键{itemss}的对象)。如果要渲染子对象的集合,请改用数组。” 为什么{i.title}是对象。这只是一个字符串。我怎样才能解决这个问题?以及实际上如何迭代嵌套对象? 问题答案: 问题是因为你回来了 这是的等效即 您将返回具有键和的对象。你可以写 要么 要么 PS请注意,前两种方法将

  • 问题内容: 我正在尝试通过数组映射来呈现帖子列表。我已经做过很多次了,但有一些 我得到的是: 未捕获的错误:对象作为React子对象无效(找到:[object Promise])。如果要渲染子级集合,请改用数组。 我检查了renderPosts返回的数据,它是一个具有正确值且没有承诺的数组。这里发生了什么? 问题答案: 将返回非实际数据,并且AFAIK Reactjs将不会在中隐式解析Promis

  • 我试图实现一个简单的功能,的一个按钮,它应该添加放置数组并显示在视图中,但我似乎得到了一个错误,请帮助 这是我的代码, 这是我得到的错误, 我是个新来的土生土长的人,所以我对此一无所知。

  • 我正在尝试用firebase react Native安装Notification push。我为iOS设置了所有的环境,并添加了请求权限的功能。在那之前,它是工作的,但一旦重新加载应用程序,我有这个错误: 错误:对象作为React子级无效(找到:具有键{_u,_v,_w,_x}得对象).如果要呈现子级集合,请改用数组。 显然是权限函数出了问题,但它仍然工作,因为我有控制台。LOG:[Thu Ma

  • 我正在React中制作一个RecipeBox应用程序,在我尝试实现搜索功能之前,它运行良好。一旦用户在搜索栏中输入搜索项,就会抛出错误。此方法中的块抛出错误- 这是错误消息- 控制台显示- 这表明是一个包含对象的数组。但是会抛出错误- 有趣的是,如果我删除搜索栏功能并完全删除else块,相同的语句就可以正常工作,不会抛出任何错误- 这是我在Codepen上的应用程序。 复制步骤- 在搜索栏中搜索现