Use object literal as TypeScript enum values

前端 未结 6 1327
星月不相逢
星月不相逢 2020-12-29 17:54

I have an enum:

export enum PizzaSize {
  SMALL =  0,
  MEDIUM = 1,
  LARGE = 2
}

But here I\'d like t

6条回答
  •  误落风尘
    2020-12-29 18:44

    Update: find @Javarome's answer below, which is more elegant. I suggest using his way.

    If you need to use Type, try adding some code. usage: getPizzSizeSpec(PizzaSize.small).value

    enum PizzaSize {
        small,
        medium,
        large
    }
    interface PizzaSizeSpec {
        key: number,
        value: number
    }
    function getPizzaSizeSpec(pizzaSize: PizzaSize): PizzaSizeSpec {
        switch (pizzaSize) {
            case PizzaSize.small:
                return {key:0, value: 25};
            case PizzaSize.medium:
                return {key:0, value: 35};
            case PizzaSize.large:
                return {key:0, value: 50};
        }
    }
    

提交回复
热议问题