0
使用Relay Container和Github's GraphQL API如果我有fragment on User { id }
它成功加载我的github帐户ID。但是,如果我尝试fragment on Repository {}
它说“GraphQL未知类型”。当连接到Github的GraphQL时,Relay和ReactJS给出错误
什么是使用中继从GitHub的API可靠地查询片段的最佳方式?
使用Relay Container和Github's GraphQL API如果我有fragment on User { id }
它成功加载我的github帐户ID。但是,如果我尝试fragment on Repository {}
它说“GraphQL未知类型”。当连接到Github的GraphQL时,Relay和ReactJS给出错误
什么是使用中继从GitHub的API可靠地查询片段的最佳方式?
我得到的错误,因为graphQL具有客户端可访问的特定属性。尝试获取错误的片段(或者在我的情况下,错误地嵌套片段名称)会导致“GraphQL未知类型”。解决方案是使用Github的GraphQL根节点relay
,该节点重新公开所有根查询,例如repository
,参见the docs以获取更多详细信息。 这里是我的父查询:
import Relay from 'react-relay'
export default {
relay : Component => Relay.QL `
query {
relay {
${Component.getFragment('relay')}
}
}
`
};
,这里是我的容器组件
import Relay from 'react-relay'
import App from './AppComponent'
export default Relay.createContainer(App, {
initialVariables: {
owner: "rails",
name: "rails",
count: 10
},
fragments: {
relay:() => Relay.QL `
fragment on Query {
repository(owner: $owner, name: $name) {
name
owner
description
issues(first: 20) {
edges {
node {
title
}
}
}
}
}`
}
});
是否包含在'片段上的东西仓库{}'像Repository {id}'上的片段? – marktani
是的,它并没有改变错误:/ – Trenton