2017-08-10 56 views
0

我正在嘗試在我的模式中創建一個分頁繼電器& graphql。這是我的代碼:如何在relay和graphql模式中正確創建連接?

const GraphQLFriendByUser = new GraphQLObjectType({ 
    name: 'FriendByUser', 
    fields: { 
    id: globalIdField('FriendByUser'), 
    _id: { 
     type: GraphQLString, 
     resolve: (root) => root._id, 
    }, 
    email: { 
     type: GraphQLBoolean, 
     resolve: (root) => root.email, 
    }, 
    fullName: { 
     type: GraphQLString, 
     resolve: (root) => { 
     return root.fullName; 
     }, 
    }, 
    }, 
    interfaces: [nodeInterface], 
}); 

const { 
    connectionType: FriendsByUserConnection, 
    edgeType: GraphQLFriendByUserEdge, 
} = connectionDefinitions({ 
    name: 'FriendByUser', 
    nodeType: GraphQLFriendByUser, 
}); 

我創造了這個在待辦事項現代同樣在看樣品,在我TodoListHome組件,這是我graphql查詢:

friendsByUserContext(first: 200) @connection(key: "TodoListHome_friendsByUserContext") { 
     id 
     _id 
     fullName 
     email 
    } 

有當我更新的模式沒有問題,但是當我嘗試建立,這是我的錯誤:

Invariant Violation: RelayParser: Unknown field id on type FriendByUserConnection . Source: document TodoListHome_viewer file: C:\Users\PE60\Desktop\socialnetworking-todoapp\js\components\TodoListHome.js .

執行甚至沒有達成解決,所以我無法登錄。但我相信錯誤不在那裏。幫幫我?

回答

0

由於您使用的是graphql-js,因此您可能在您的/graphql端點上託管了graphiql。這是調試查詢並查看模式結構的好地方。您會看到您所說的連接有edges字段,其​​中有node字段,其​​中包含您要查找的字段。

相關問題