在 graphql 查询中包装组件时出错

Posted

技术标签:

【中文标题】在 graphql 查询中包装组件时出错【英文标题】:Error while wrapping a component in a graphql query 【发布时间】:2018-09-11 20:22:18 【问题描述】:

我正在使用 Apollo 客户端向 GraphQL 服务器发送请求。

所以我以这种方式将 react 组件包装在 GraphQL 函数中

GraphQL(query)(HomeView);

我收到了这个错误:

传递给解析器的 [object Object] 参数不是有效的 GraphQL 文档节点。您可能需要使用“graphql-tag”或其他方法 将您的操作转换为文档

我该如何解决这个问题?

这是我的组件代码:

import React, Component from 'react';

import  graphql  from 'react-apollo';
import gql from 'graphql-tag';

const query = 
    query: gql`
        
            hello
        
    `
;

class HomeView extends Component 
    render() 
        return (
            <div>
                <h1>Home</h1>
            </div>
        );
    


export default graphql(query)(HomeView);

【问题讨论】:

【参考方案1】:

您需要将所有查询包装在 gql 标签中:

const query = gql`
    
      hello
    
`;

【讨论】:

以上是关于在 graphql 查询中包装组件时出错的主要内容,如果未能解决你的问题,请参考以下文章

GraphQL/Graph.cool 查询过滤嵌套关系

在 VStack 中包装 WebView 时出错:无法推断复杂的闭包返回类型;添加显式类型以消除歧义

将 GraphQL 片段与 Apollo Hooks 一起使用时出错

GraphQL 查询在一个字段上运行良好,但在第二个字段上出错?

在 GraphQL Wordpress 查询搜索中包含 mediaItems

GraphQL 浅谈,从理解 Graph 开始