5

TypeScript NestJS プロジェクトがあります。

API への着信 DTO を検証する必要があります。建物のタイプ (家、フラット、庭) があり、そのタイプに応じて定義する必要がある「プロジェクトの作成」として説明できます。

  • ハウス: ROOMSを含むFLOORS
  • フラット: 客室
  • 庭:なし(1つの「部屋」です)

ハウスタイプの例:

{
  type: HOUSE,
  floors: [
    {
      name: "1st floor",
      rooms: [
        {
          name: "bedroom"
        }
      ]
    }
  ]
}

フラットタイプの例:

{
  type: FLAT,
  rooms: [
    {
      name: "bedroom"
    }
  ]
}

以前は の助けを借りてこれを行っていましたAJVが、NestJS に移行したので、 を使い始めましclass-validatorた。

私の質問は、これらの高度な条件 (たとえば、型が FLAT の場合、ROOMS のみを期待し、FLOORS を期待しない) をclass-validator?で作成できるかどうかです。

4

2 に答える 2