带有整数查询参数的 RelayJS 不变冲突
RelayJS Invariant Violation with integer query parameter
我对 Relay 比较陌生,所以这可能是我犯的一个简单错误,但我已经找了一段时间,但没有找到关于我遇到的问题的任何信息。
这是我从我的应用程序中得到的错误:
Uncaught Error: Invariant Violation: GraphQLFragmentPointer: Value for the argument to story
on query Route
should be a string, but it was set to 10
. Check that the value is a string.
问题是我实际上希望它是 10
而不想它是字符串。我配置有误吗?
这是我的 GraphQL 模式:
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)
}
}
},
}),
});
这是我定义的中继路由:
export default class extends Relay.Route {
static queries = {
story: () => Relay.QL`
query {
story(storyID: $storyID)
}
`,
};
static paramDefinitions = {
storyID: {
required: false
},
};
static routeName = 'StoryRoute';
};
这就是我实例化它的方式:
let route = new Route({storyID: 10})
好的,看来我终于想通了。
看来根字段限制严重,目前只能无参数,单字符串参数或多字符串参数,直接与抓取的对象ID相连。
在此处查找更多信息:https://github.com/facebook/relay/issues/112
在这里:https://github.com/facebook/relay/issues/94
我对 Relay 比较陌生,所以这可能是我犯的一个简单错误,但我已经找了一段时间,但没有找到关于我遇到的问题的任何信息。
这是我从我的应用程序中得到的错误:
Uncaught Error: Invariant Violation: GraphQLFragmentPointer: Value for the argument to
story
on queryRoute
should be a string, but it was set to10
. Check that the value is a string.
问题是我实际上希望它是 10
而不想它是字符串。我配置有误吗?
这是我的 GraphQL 模式:
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)
}
}
},
}),
});
这是我定义的中继路由:
export default class extends Relay.Route {
static queries = {
story: () => Relay.QL`
query {
story(storyID: $storyID)
}
`,
};
static paramDefinitions = {
storyID: {
required: false
},
};
static routeName = 'StoryRoute';
};
这就是我实例化它的方式:
let route = new Route({storyID: 10})
好的,看来我终于想通了。
看来根字段限制严重,目前只能无参数,单字符串参数或多字符串参数,直接与抓取的对象ID相连。
在此处查找更多信息:https://github.com/facebook/relay/issues/112 在这里:https://github.com/facebook/relay/issues/94