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

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

npx ts-node

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

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

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

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

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

deno(おすすめ)

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

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

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

グローバルのts-node

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

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

ts-node test.ts

トラブルシューティング

npx ts-node test.tsで実行すると、下記のエラーになります。

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

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

解決方法。

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

完了

ご参考まで!では。


関連投稿

Next.js + material-ui + styled-componentsの型安全のテーマカスタマイズ

2022年1月16日

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

2021年3月23日

ThunderMiracle

Blog part of ThunderMiracle.com