代码之家  ›  专栏  ›  技术社区  ›  wallop

实现必须明确提及所有接口字段,还是可以跳过它们?

  •  0
  • wallop  · 技术社区  · 1 年前

    假设存在如下界面?

    interface Node {
      id: ID!
      something1: string,
      something2: number
    }
    

    是否应按以下方式实施?

        type User implements Node {
           id: ID!
           something1: string,
           something2: number,
           something3: string
        } 
    

    或者可以如下实现,并且可以理解包括接口字段

    type User implements Node {
        something3: string
    } 
    

    或者,是否有一条规则,只有不可为空的字段才必须明确提及,如下所示

    type User implements Node {
        id: ID!
        something3: string
    }
    
    1 回复  |  直到 1 年前
        1
  •  3
  •   Michel Floyd    1 年前

    docs

    如果一个对象类型实现了一个接口,它必须包括该接口的所有字段

    因此,你的第一个案例是正确的。