首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >整数查询参数的RelayJS不变冲突

整数查询参数的RelayJS不变冲突
EN

Stack Overflow用户
提问于 2015-09-19 13:06:06
回答 1查看 233关注 0票数 2

我对Relay相对来说是个新手,所以这可能是我犯的一个简单的错误,但是我已经找了一段时间了,而且我还没有找到任何关于我遇到的问题的信息。

这是我从我的应用程序中得到的错误:

未知错误:不变量冲突: GraphQLFragmentPointer:story查询Route上的参数的值应该是字符串,但它被设置为10。检查该值是否为字符串。

问题是,我实际上希望它是10,而不希望它是字符串。我配置错了什么东西吗?

这是我的GraphQL模式:

代码语言:javascript
复制
var queryType = new GraphQLObjectType({
    name: 'Query',
    fields: () => ({
        node: nodeField,
        story: {
            type: storyType,
            args: {
                storyID: {
                    description: 'Story ID',
                    type: GraphQLInt
                }
            },
            resolve: (root, {storyID}) => {
                if (storyID) {
                    return Story.get(storyID)
                } else {
                    return Story.get(10)
                }
            }
        },
    }),
});

这是我定义的中继路线:

代码语言:javascript
复制
export default class extends Relay.Route {
  static queries = {
    story: () => Relay.QL`
      query {
        story(storyID: $storyID)
      }
    `,
  };

  static paramDefinitions = {
    storyID: {
        required: false
    },
  };

  static routeName = 'StoryRoute';
};

我就是这样实例化它的:

代码语言:javascript
复制
let route = new Route({storyID: 10})
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-19 15:58:24

好吧,看来我终于想出来了。

看来根字段受到严格限制,目前只能有参数、单个字符串参数或多个字符串参数,这些参数与获取的对象ID直接连接。

在这里查找更多信息:https://github.com/facebook/relay/issues/112https://github.com/facebook/relay/issues/94

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32668568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档