Перебор перечисления без его статических функций в пространстве имен - PullRequest
1 голос
/ 30 мая 2019

В Typescript 2.4+ вы можете иметь тип enum и пространство имен, объявленные под тем же именем.В пространстве имен вы можете писать статические функции.

export enum Foo {
 ...
}

export namespace Foo {
 export const getAllEnumTypes = (): Foo[] => {
   return Object.keys(Foo)
      .map((key) => Foo[key]));
};

Таким образом, приведенный выше оператор кода возвращает все члены перечисления Foo, но также и функцию getAllEnumTypes() в качестве члена.Как мы можем предотвратить это?

...