代码之家  ›  专栏  ›  技术社区  ›  Nick Bull

TypeScript中Redux操作的枚举

  •  0
  • Nick Bull  · 技术社区  · 5 年前

    enum . 具体来说,我被告知以下做法不适合重做:

    export enum TODOS {
      ADD: 'ADD',
      REMOVE: 'REMOVE',
    }
    

    而更喜欢字符串文本:

    export const ADD_TODO = 'ADD_TODO';
    export const REMOVE_TODO = 'REMOVE_TODO';
    

    这是更好的做法吗?如果是,为什么?我天真的认为 enums CREATE_TABLE 操作,无需使用命名空间延长名称以防止冲突)

    我找不到这篇博文的链接,但基本原则是:

    • 将任何数值赋给枚举:
    enum Direction {
      Up,
      Down,
      Left,
      Right,
    }
    
    const strangeWay = 27 as Direction
    

    当然,不适用于字符串枚举

    • Here's a Reddit post ,它声明相同,但没有给出任何关于运行时含义是什么的推理,只是有比字符串更多的需要考虑

    编辑

    0 回复  |  直到 5 年前