Microsoft社製の人気のAltJS「TypeScript」は現在1.8系が最新バージョンですが、2.0へのメジャーアップデートを控えています。本エントリーでは、リリース前のTypeScript 2.0を安全に試す方法を紹介します。
TypeScript 2.0をインストールする
TypeScript 2.0はリリース前の為、グローバル環境にインストールすると他のプロジェクトに影響を与える可能性があります。他プロジェクトに影響を与えないよう、グローバルではなくテスト用フォルダの範囲内のみでTypeScript 2.0を使えるようにします。
任意のフォルダを作成し、npm init -y
を実行しておきます。
cd myproject
npm init -y
現在開発中のTypeScript 2系をインストールするには、次のコマンドを実行します。
npm install --save-dev typescript@beta
--save-dev
を指定することで、プロジェクトフォルダ内のnode_modules
フォルダにTypeScript 2.0がインストールされます。
TypeScript 2.0コードをコンパイルする
TypeScript 2.0の動作を確かめるため、TypeScript 2.0の新機能の一つであるprivateなconstructorを使ったコードを書きます。ファイル名はhoge.ts
とします。
class Hoge {
private constructor() {
}
}
TypeScript 1.8系ではこのコードをコンパイルするとエラーになります。node_modules
にインストールされたTypeScript 2.0でコードをコンパイルするには、2つの方法があります。
1. コマンドを直接指定してコンパイルする
node_modules
内のTypeScript 2.0は./node_modules/.bin/tsc
で実行できます。
./node_modules/.bin/tsc hoge.ts
実行すると、hoge.ts
がJavaScriptファイルhoge.js
ファイルにコンパイルされます。
var Hoge = (function () {
function Hoge() {
}
return Hoge;
}());
2. npm-scriptsを使ってコンパイルする
package.jsonファイルにシェルスクリプト(のエイリアス)を記述することで、npmモジュールを使う方法です。直接コマンドを叩くよりも完結に記述でき、かつ他のタスクとも連携しやすいので、お薦めの方法です。npm-scriptsについては、記事「Node.jsユーザーなら押さえておきたいnpm-scriptsのタスク実行方法まとめ - ICS MEDIA」を参照ください。
以下は、compile
というタスクを作成した例です。
{
"scripts": {
"compile": "tsc hoge.ts"
}
}
compile
を実行するには、次のコマンドを実行します。
npm run compile
compile
は、コマンド./node_modules/.bin/tsc hoge.ts
と同じ意味になる為、実行すると「1. コマンドを直接指定して使う」と同じようにJavaScriptファイルhoge.js
へコンパイルされます。
var Hoge = (function () {
function Hoge() {
}
return Hoge;
}());
TypeScript 2.0を先取りしよう
TypeScript 2.0のロードマップは記事「Roadmap · Microsoft/TypeScript Wiki」より確認できます。個人的には「async/await and generators support for ES5/ES3」が楽しみです。リリースは近々と噂されていますので、TypeScript 2.0をインストールして、一足早く新機能を試してみましょう。
次のエントリーでは、TypeScript 2.0で、npmのみで型定義ファイルを管理する方法を紹介します。