React GraphQL Relay - 如何进行简单查询?

时间:2017-11-24 23:09:08

标签: reactjs graphql relay relaymodern

目标:

我正在尝试使用中继查询来自GraphQL server的特定字符。

问题:

该查询适用于GraphiQL。但是在这里,当我跑步"relay-compiler": "^1.4.1"时,我正在......

  

错误:解析错误:错误:FindGraphQLTags:graphql中的操作名称   标签必须以模块名称为前缀,并以“Mutation”结尾,   “查询”或“订阅”。在模块clientQuery中获得Jedi。在   “组件/ Jedi.js”

问题:

我不能像GraphiQL那样查询特定字符吗?我怎样才能做到这一点?

守则:

import React from 'react'
import { QueryRenderer, graphql } from 'react-relay'

const BlogPostPreview = props => {
 return (
   <div key={props.post.id}>{props.post.name}</div>
 )
}

export default QueryRenderer(BlogPostPreview, {
post: graphql`
         query clientQuery {
           character(id: 1000) {
             id
             name
             appearsIn
          }
        }
    `
})

2 个答案:

答案 0 :(得分:0)

  

graphql标记中的操作名称必须以模块名称

为前缀

如果BlogPostPreview是模块的名称,则应将查询(clientQuery)重命名为BlogPostPreviewQuery。

答案 1 :(得分:0)

以下是示例。如果查询在:

  • /app/foo.js-fooQueryfooAnythingQuery
  • /app/foo/index.js-fooQueryfooAnythingQuery
  • /app/Foo/index.js-FooQueryFooAnythingQuery
  • /app/foo/bar.js-barQuerybarAnythingQuery