BT

新しい あなたは、アーリーアダプター?それともイノベーター?そんな皆様に、InfoQの新機能をご案内しています。詳細はこちら

TypeScriptがReactをサポート

| 作者: James Chesters , 翻訳者 笹井 崇司 投稿日 2015年9月17日. 推定読書時間: 1分未満 |

原文(投稿日:2015/09/07)へのリンク

MicrosoftがTypeScript 1.6のベータをリリースした。これにはReactのサポートが含まれている。

プログラムマネージャのJonathan Turner氏は、ブログ記事「Announcing TypeScript 1.6 Beta: React/JSX, better error checking, and more」において、TypeScriptチームはDojo、Aurelia、Angularなどのチームと協力してきたが、Reactは「重要なライブラリ」だがTypeScript開発者にとって難しいところがあったと説明した。

Turner氏はこう言っている。

これはJSXのサポートが欠けているためでした。JSでDOMとネイティブコンポーネントを書くのに、JSXは人気のあるやり方です。Reactは日々のコードでJSXを多用します。残念ながら、JSXの構文は、すでにTypeScriptが使っているキャスト構文とコンフリクトします。

Turner氏は、バージョン1.6に新しい.tsxファイル拡張子を導入することで、「TypeScriptファイル内でJSXを使えるようにし、新しい「as」演算子をデフォルトのキャスト方法にします」と続けた。これにより、TypeScriptでReact/JSXを動かすための完全なサポートが追加される。

Hacker Newsにおける反応はまちまちだったが、大半はポジティブだった。ユーザのjschrfはこうコメントした。「TypeScriptのこうしたすばやい吸収は喜ばしいことで、Dojo 2.0やAngular 2.0といった巨大なフレームワークによる採用はすばらしいことです。でも、JSXが入り込んできたのは、ちょっと奇妙に感じずにはいられませんし、少し残念です。」

TheAnimusはこう答えた。「フロントエンドをReactJSにするのに時間をかけている組織の人にとって、これは非常に役立つでしょう。キャスト演算子が「as」になるという「訛り」は.tsxファイル内だけなので、うまく管理できるでしょう。」

TypeScript 1.6の改善には、オブジェクトチェッキングルールの更新も含まれる。代入時、オブジェクトはより厳重にマッチングする必要がある。Turner氏は次のような例をあげた。

var x: { foo: number };
x = { foo: 1, baz: 2 };  // エラー。プロパティ'baz'が余計だが、1.6より前だと捕捉されない

var y: { foo: number, bar?: number };
y = { foo: 1, baz: 2 };  // エラー。プロパティ'baz'が余計あるいはスペルミスだが、1.6より前だと捕捉されない

彼はこう言う。「フィールドがオプショナルだと、うっかりタイプミスしたフィールドを渡したり、リファクタリングで余計なフィールドが残るのを見逃しやすいです。この変更は、アーリーアダプターのコードにおいて、実際のバグを(何百とは言わないまでも)何十も見つけるのに役立っています。」

他にも1.6リリースの新しい機能には、クラス表現のサポートを追加したES6ジェネレータがある。機能の完全なリストについてはロードマップを参照してほしい。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT