2017-02-16 46 views
0

我正在使用graphql-java。我有自定義的對象,例如:MyObject(它有一些領域......)。graphql-java:對象定義可以同時是GraphQLObjectType和GraphQLInputObjectType

請求是我想用它作爲另一個突變對象中的參數。我不想將其定義爲兩次GraphQLObjectType & GraphQLInputObjectType)。

難道這樣做了,怎麼做?感謝

  • GraphQLObjectType

    public GraphQLObjectType myObjectType() { 
        return newObject() 
          .name("MyObj") 
          .description("My object") 
    
          .field(newFieldDefinition() 
            .name("field1") 
            .description("field 1") 
            .type(GraphQLString)) 
          // ... 
          .build(); 
    } 
    
  • GraphQLInputObjectType

    public GraphQLInputObjectType myInputObjectType() { 
        return newInputObject() 
         .name("MyInputObj") 
         .description("My input object") 
    
         .field(newInputObjectField() 
           .name("field1") 
           .description("field 1") 
           .type(GraphQLString)) 
         // ... 
         .build(); 
        } 
    
+0

AFAIK,這是不可能的。 – CommonsWare

回答

1

不,它們是完全不同的東西,你通常會發現你的輸入類型從相當於發散對象類型無論如何。相反,我會依賴其他模式進行代碼重用。

相關問題