DTO フィルタリングの場所があります。緯度、経度、半径を指定して、いくつかの場所だけを照会できます。3 つすべてがオプションのフィールドですが、そのうちの 1 つを設定すると、他の 2 つも必要になります。だから私がこれまでに持っているもの
export class GetLocationsDTO {
@IsNumber()
@IsLatitude()
// optional but requires longitude and radius
@Type(() => Number)
public latitude?: number;
@IsNumber()
@IsLongitude()
// optional but requires latitude and radius
@Type(() => Number)
public longitude?: number;
@IsNumber()
// optional but requires latitude and longitude
@Type(() => Number)
public radiusInKilometers?: number;
}
このサンプルのようなデコレータはありますか
@IsOptionalButDependsOn(['fieldFoo', 'fieldBar'])
したがって、3 つすべてがオプションですが、そのうちの 1 つが提供された場合、他の 2 つのフィールドも提供される必要があります。