環境
環境 | バージョン |
---|---|
node | 12.18.3 |
typescript | 3.8.3 |
typeorm | 0.2.26 |
問題と解決策
問題
typeorm init --name MyProject --database mysql
で作成したプロジェクトをビルドして動かそうとするとSyntaxError: Cannot use import statement outside a module
とエラーになる
原因
- ジェネレーターが吐き出すコードがおかしいせい
- 具体的にはビルド後に
.ts
ファイルを参照する状態になっている- 動くわけがない
解決策
ormconfig.json
のentities
~subscribers
のセクションを以下のように出力先の.js
ファイルを参照する様に書き換える
"entities":["dist/entity/**/*.js"],"migrations":["dist/migration/**/*.js"],"subscribers":["dist/subscriber/**/*.js"],