2021年4月7日 • ☕️ 2 min read

1つのTypeScriptファイルのみを実行するために、package.json+node_modulesの組み合わせは少々煩雑でしょう。今日いくつかコマンドラインでTypeScriptファイルを実装できる方法をまとめてみます。

npx ts-node

typescriptに依存する上、8.0以降のバージョンであれば、npxで実行するとき、グローバルのtypescriptではなく、ローカル(同じフォルダ)のtypescriptを参照するようになりました。

なので、比較的にきれいなやり方は下記のようになるでしょう。

# グローバルのtypescriptのインストール
npm i -g typescript

# 実行フォルダにSymbolic Linkを作成
npm link typescript

# ts-nodeで実行
npx ts-node test.ts

deno(おすすめ)

1.6以降のdenoであれば、watchモードも使えるので、かなりやばいです。

# denoをインストール
curl -fsSL https://deno.land/x/install/install.sh | sh

# denoで実行
deno run --unstable --watch test.ts

グローバルのts-node

あまりグローバルのts-nodeをインストールする意味が薄いですが、一応。。。

# ts-nodeとtypescriptをグローバルでインストール
npm i -g typescript ts-node

ts-node test.ts

トラブルシューティング

npx ts-node test.tsで実行すると、下記のエラー:

npx: 9個のパッケージを1.416秒でインストールしました。
Cannot find module 'typescript'

原因: globalのtypescriptをインストールしたが、ローカル(同じ)のtypescriptを参照できないからなのです。

解決:

# 実行フォルダにSymblic Linkを作成
npm link typescript

完了

ご参考まで!では〜


関連投稿

コストコオンラインの商品価格変動チェックのバッチを作ってみた

2021年3月23日

ThunderMiracle

Blog part of ThunderMiracle.com