2016-08-05 108 views
3

我有相關的類別和標記的模式阿波羅graphql傳遞參數來解決功能

type Category { 
    id: Int 
    name: String 
    parent: Category 
    children: [Category] 
    markers: [Marker] 
} 

type Marker { 
    id: Int 
    name: String 
    categories: [Category] 
} 

type Query { 
    category(limit: Int, offset: Int): [Category] 
    marker(limit: Int, offset: Int): [Marker] 
} 

schema { 
    query: Query 
} 

我現在可以寫這樣的查詢:

query{ 
    category(limit: 3){ 
    name 
    markers{ 
     name 

    } 
    } 
} 

我如何可以定義爲可能的參數標記以及? - >

query{ 
     category(limit: 3){ 
     name 
     markers(limit: 3){ 
      name 

     } 
     } 
    } 

,所以我可以用參數的解析器 - >

 export const resolvers = { 
      Query: { 
       async category(root, args, context) { 
        return Categories.findAll({limit: args.limit, offset: args.offset}); 
       }, 
       async marker(root, args, context) { 
        return Markers.findAll({limit: args.limit, offset: args.offset}); 
       }, 
      }, 
      Category: { 
       async markers(category){ 
        return category.getMarkers(); 
       } 
      } 
    } 

即我可以將它傳遞到查詢解析器中,因爲它是在模式中定義的,但我無法將它應用於類別類型內的標記解析器。

+0

我不是專家,但你可能想看看查詢變量 –

回答