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