1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【TypeScript】tscコマンドが使えない時の対処法

Last updated at Posted at 2021-02-19

状況

  1. $ npm i typescript -gした後に$ tsc --versionとしてもcommand not foundとなる場合
  2. iTerm2ではtscコマンドが使えるが、VSCodeでtscコマンドが使えない場合

Too Long, Didn’t Read

  1. PATHを通す
  2. 再起動、Nodeの再インストール

環境

  • MacOS Big Sur v11.2.1
  • node v15.9.0
  • npm v7.5.3

対処

1. $ tsc --versionとしてもcommand not foundとなる場合

PATHを通します。
参考:PATHを通すとは?

npmがグローバルで使用しているディレクトリを確認する

$ npm bin -g
/Users/xxx/.nodebrew/node/v15.9.0/bin

.zschrに追記する(bashの方は.bash_profileで置き換えて読んでください)

$ sudo vi ~/.zshrc

iキーを押してINSERTモードにし、最終行に下記を追記。
私は見やすいようにコメントアウトで説明を書いています。

export PATH=$PATH:`npm bin -g`

escキー→:wqenterキーで保存し、viを抜けます。
$ source ~/.zshrcコマンドでやっと編集内容を反映できます。

何も出力されなければ反映成功なのですが、何故か私は反映できないと怒られてしまいました。

$ source ~/.zshrc
(not in PATH env variable)
/Users/xxx/.zshrc:export:129: not valid in this context: /Users/xxx/.nodebrew/node/v15.9.0/bin

PATHを直で書いてみる。

(省略)
# TypeScript
export PATH="/Users/xxx/.nodebrew/node/v15.9.0/bin$PATH"

再び$ souce ~/.zshrcで反映できました。

$ tsc --version
Version 4.1.5

1, $ tsc --versionとしてもcommand not foundとなる場合は以上です。

2. iTerm2ではtscコマンドが使えるが、VSCodeでtscコマンドが使えない場合

上記1のやり方で、tscコマンドをiterm2で使うことが可能になったわけですが、何故かVSCodeのターミナルではcommand not foundのままだったので解決法を探ることに。

  1. VSCodeの再起動
  2. Macの再起動
  3. Node, TSを入れ直す

私は3でやっと直りました。

まず、npmをアンインストール

$ npm uninstall -g npm
$ rm -rf .npm \
>node_modules

続いてNodeのアンインストール。ソース版だとアンインストールの方法が違います。今までソース版を使っていた方はこれを気にパッケージ版で楽に管理しましょう!

$ brew uninstall --force node
...

# homebrewのアップデート
$ brew update

# nodebrewのインストール
$ curl -L git.io/nodebrew | perl - setup
$ export PATH=$HOME/.nodebrew/current/bin:$PATH
$ source ~/.zshrc

以下のコマンドを打ち、nodebrewのバージョンが出ればインストール成功。

$ nodebrew -v
nodebrew 1.0.1

Nodejsのインストール。

バージョン指定もしくは最新のものをインストールできます。
{}に次のどちらかを入力

  • v○.○.○(例v6.11.4) → バージョン6.11.4
  • latest → 最新“
$ nodebrew install-binary {}
...
Installed successfully

# インストールしたバージョンのものが入っているか確認
$ nodebrew ls
v15.9.0

# 使用するバージョンを指定する
$ nodebrew use v15.9.0

# 最後にNodeのバージョンを確認!
$ node -v
v15.9.0

やっとこれで再起動前と同じ状態のとこまで戻ってきました...

ためしにtscコマンドを打ってみます。

$ tsc --version
zsh: command not found: tsc

もちろんできません。
最後にTypeScriptをインストールしてあげましょう!

$ npm install typescript -g

$ tsc --version
Version 4.1.5

VSCode上のターミナルでも問題なく使えました!

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?