[英]GraphQL: How to handle a schema with a mix of String and JSON without using graphql-type-json?
我是 GraphQL 的新手並且還在學習。 我有一個 rest API 返回響應如下:
{
"campaign_types": [
{
"name": "USA",
"scenarios": [
{
"id": "jsdx-sdsd-xsds",
"name": "NBA"
},
{
"id": "jsds-sdfs-xdfd",
"name": "NFL"
}
],
"id:": 0
},
{
"name": "Australia",
"scenarios": [
{
"id": "jtds-sada-xdfs",
"name": "AFL"
},
{
"id": "klhj-sdfs-fdfs",
"name": "NRL"
}
],
"id:": 1
}
]
}
我想在另一個使用TypeScript
和React
前端構建的應用程序中將其轉換為 GraphQL API,因為它僅處理 GraphQL API。 我的要求是在我的第二個應用程序中,當我進行 GraphQL API 調用時,它應該返回與其余 API 相同的 API 響應。
當我按如下方式定義我的 GraphQL 架構時,出現此錯誤:
type CommsCampaignType {
id: ID!
name: String!
scenarios: [JSON]
}
錯誤:
Error: Type "JSON" not found in document
我看到一些帖子說使用grahql-type-json
但如果有辦法的話我想不使用它。 我正在尋找的最終結果是在我的 UI 中,我有一個下拉列表,它將 Campaign_Type 名稱顯示為“USA”、“Australia”,當我選擇它時應該顯示相應的場景名稱“NBA”、“NFL”和“AFL” ,“NRL”分別在第二個下拉列表中。 所以我的 GraphQL API 查詢應該能夠產生那個結果。
如果有人可以為此提出最佳方法,那就太好了。 謝謝。
定義Scenario
類型:
type Scenario {
id: ID!
name: String!
}
然后在您的CommsCampaignType
中使用它:
type CommsCampaignType {
id: ID!
name: String!
scenarios: [Scenario]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.