BT

大幅な機能変更への準備を開発者に促すReact 15.5

| 作者: David Iffland フォローする 4 人のフォロワー , 翻訳者 h_yoshida フォローする 1 人のフォロワー 投稿日 2017年5月29日. 推定読書時間: 2 分 |

原文(投稿日:2017/04/14)へのリンク

FacebookがReact 15.5をリリースした。バージョン16の大きな変化に対応するための時間的余裕を開発者に提供することが目的だ。

リリースのブログ記事ではAndew Clark氏が、React.PropTypesReact.createClassの2機能をメインパッケージから廃止する予定であることを明らかにしている。バージョン16への移行に備えるため、将来的なコードサイズ改善の方法として、独自のパッケージに移行されることになったのだ。

この2機能をメインパッケージから使用すると、現在はコンソールに警告が表示されるようになっている。現時点で修正を行なわない場合、バージョン16では動作しないことになる。

Reactが最初にリリースされた当時は、JavaScriptのクラスを生成する慣習的な方法がありませんでした。そのため、独自の方法としてReact.createClassを提供したのです。

その後ES2015において言語仕様の一部としてクラスが加えられたため、JavaScriptクラスを使用したRactコンポーネントの生成を可能にしました。機能コンポーネントと同様に、現在ではJavaScriptクラスを使用したコンポーネント生成は、Reactとして望ましい方法になっています。

JavaScriptクラスを使用するようにアプリを再コーディングすることができない場合には、NPMで使用可能なcreate-react-classモジュールに切り換えるという方法もある。この場合でもコード変更は必要だが、JavaScriptクラスの使用は回避できる。

propTypesの廃止は、ほとんどの開発者にとって、あまり大きな損失にはならないはずだ。TypeScriptでReactをコーディングしたり、あるいはツールチェーンにFlowを組み込むのであれば、Reactプロジェクトをタイプチェックするもっとよい方法がある。例えばTypeScriptの開発者ならば、prop強い型付けで定義することができる。

interface MyProps { firstName: string, lastName: string }

export default class MyComponent extends React.Component<MyProps, any> {

}

このようにクラスを宣言することで、TypeScript開発者は適切な型チェックを自動的に利用することが可能になる。propTypesの使用はすでに冗長なものになっているのだ。

バージョン15.5はまた、Reactアドオンの最後のリリースでもある。その中のいくつかは他のパッケージにプッシュされているが、フラグメントがビルトインでサポートされるバージョン16にはcreateFragmentは組み込まれない。

この記事を評価

関連性
スタイル

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには 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でリプライする

ディスカッション

特集コンテンツ一覧

.NETの派生を理解する

Wayne Citrin 2018年7月18日 午前3時44分

ASP.NET Core - シンプルの力

Chris Klug 2018年6月4日 午前3時26分

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


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

Follow

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

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

Like

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

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

Notifications

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

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

BT