1. ホーム
  2. typescript

[解決済み] Enumのインポート方法

2023-01-24 01:42:58

質問

enumを作成したのですが、VS15でenumをインポートして使うことができず困っています。

これは、enums.tsに含まれているenumです。

enum EntityStatus {
     New = 0,
     Active = 1,
     Archived = 2,
     Trashed = 3,
     Deleted = 4
}

Visual Studio はこの enum をインポートすることなく認識するので、コンパイル時のエラーは発生しません。 しかし、実行時にはエラーがスローされます。

 Cannot read property 'Archived' of undefined.

そこで、他のクラスをインポートするように、このクラスをインポートしてみます。

 import {EntityStatus} from "../../core/enums";

Visual Studioでコンパイルタイムエラーが発生するようになりました。

 "...enums is not a module ..."

では、どのようにenumをインポートすればよいのでしょうか?

どのように解決するのですか?

exportキーワードが抜けていました。

 export enum EntityStatus {
      New = 0,
      Active = 1,
      Archived = 2,
      Trashed = 3,
      Deleted = 4
 }

すると、期待通りに動きました。