0

I have a problem using an enum in Typescript.

export enum RegistrationStatusEnum {
        Pending,
        Rejected,
        Approved,
        InManagement,
    }

UserDTO.ts

import { RegistrationStatusEnum } from "../../Enums/RegistrationStatusEnum";

export class UserDTO {
  Name: string
  RegistrationStatus: RegistrationStatusEnum
}

OtherTS.ts

disableStatus(currentUser: UserDTO):boolean
    return currentUser.RegistrationStatus.Pending || currentUser.RegistrationStatus.Rejected || currentUser.RegistrationStatus.InManagement;
}

When I try to access Pending or other enum, I get an error The 'Pending' property does not exist in the 'RegistrationStatusEnum' type What is happening? Thx!

1 Answer 1

2

currentUser.RegistrationStatus is an enum value, it can be one of the enum members, but to check that you need to use === operator and compare with the specific field from the enum:

disableStatus(currentUser: UserDTO): boolean {
    return currentUser.RegistrationStatus === RegistrationStatusEnum.Pending 
        || currentUser.RegistrationStatus === RegistrationStatusEnum.Rejected 
        || currentUser.RegistrationStatus === RegistrationStatusEnum.InManagement;
}
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.