環境
ディレクトリ構造
tree
.
├── index.ts
└── helpers
├── foo.ts # {foo: ...}
└── bar.ts # {bar: ...}
依存インストール
yarn add -D typescript ts-node
yarn run tsc --init
TypeScript 設定
helpers/foo
という感じでインポートできるようにこんな感じに設定。(この辺の設定について |> TypeScriptでaliasなパスでmoduleをimportできるように)
tsconfig.json
{
"compilerOptions": {
"baseUrl": "./",
"paths": {
"helpers/*": ["helpers/*"]
}
}
}
確認ファイル
index.ts
import {foo} from 'helpers/foo';
import {bar} from 'helpers/bar';
こんな感じで、yarn run ts-node index.ts
とすればできる…ハズだった。
なんかできない
stderr
Error: Cannot find module 'helpers/foo'
ググる
おー、tsconfig.json/paths not working with ts-nodeというイシューがありました。
とりあえずこのtsconfig-pathsっていうの使ってみる…
yarn add -D tsconfig-paths
yarn run ts-node -r tsconfig-paths/register index.ts
ターーン!!?!?!!!!?!😇
解決しました。