inherited-binding
継承バインディング
フィールドデコレータは、親クラスで宣言されたフィールドにも適用されます。 これにより、ベースクラスで共通フィールドを定義し、子クラスで拡張またはオーバーライドできます。
例
class BaseRequest {
@Body()
@Length(10)
id!: string
}
class CreateUserRequest extends BaseRequest {
@Body()
@OneOf(["admin", "user"])
role!: string
}
結果
CreateUserRequest は以下のフィールドを持ちます:
-
id :
BaseRequestから継承 -
role :
CreateUserRequestで定義