2016-03-15 9 views
6

GraphQLはタイトルとコンテンツのプロパティをnullとして解決しますが、サーバーのデータがサーバーから確実に取得されています。 graphqlから_idプロパティだけが返されますが、これは私がクエリから返すものですjson { listings: [ { _id: '56e6c94f1cf94a7c0a4e22ba', title: null, content: null } ] }すべての情報が正しく設定されている限り、TitleとContentにGraphQLIDTypeを与えて、タイプの違いを除外してみました。graphqlは_idフィールドのみを解決し、他のフィールドはnullです

私はgraphqlクエリ持っている:私は、これは古いです知っているが、持っていた

const ListingType = new GraphQLObjectType({ 
    name: 'Listing', 
    fields: { 
    _id: { 
     type: GraphQLID 
    }, 
    title: { 
     type: GraphQLString 
    }, 
    content: { 
     type: GraphQLString 
    } 
    } 
}) 
+0

何が 'はconsole.log(上場)'印刷? –

+0

これは '' {'content:'私は内容です '、 タイトル:' Hello and welcome '、 _id:56e6c94f1cf94a7c0a4e22ba】' – Melbourne2991

+0

'console.log(listing)'がその配列を出力していることが絶対に確かであれば、エラーは別の場所にあるはずです。あなたのクライアントでクエリを作成するかもしれませんか?それでも解決できない場合は、関連性の高いコードを投稿することを検討してください。このコードは私にとっては完璧に見えます。 –

答えて

0

query(` 
    query findListings { 
    listings(offset: 1) { 
     _id, 
     title, 
     content 
    } 
    } 
`).then((json) => { 
    console.log('json', json.data) 
}) 

私のルートクエリの種類:

const QueryType = new GraphQLObjectType({ 
    name: 'Query', 
    fields: { 
    listings: { 
     name: 'listings', 
     type: new GraphQLList(ListingType), 
     args: { 
     limit: { 
      type: GraphQLInt 
     }, 
     offset: { 
      type: GraphQLInt 
     } 
     }, 
     resolve(source, args, info) { 
     const { fieldASTs } = info 
     const projection = getProjection(fieldASTs[0]) 

     return ListingModel.find({}, projection).then(listing => { 
      console.log(listing) 
      return listing 
     }) 
     } 
    } 
    } 
}) 

と私の "リストタイプを"同様の問題、リストを照会するとnullが返される

配列を照会するときは、{キー:yourArray}オブジェクトを取得しますそれがあるべきように:

return ListingModel.find({}, projection).then(listing => { 
console.log(listing) 
return {listing: listing} 
関連する問題