Angular 10は、GoogleのSPAフレームワークの次のメジャーリリースである。これは比較的小さなリリースで、バグの修正、ツールの改善、依存関係の更新に重点を置いている。
Angular 10には目に見える変更はほとんどないが、チームは舞台裏でいくつかの重要な更新を行った。
Angularプロジェクトがますます大きくなるにつれて、それらを維持することがより困難になることがよくある。開発者が増え続けるコードベースに対処するのを支援するために、Angularチームは、バグを早期にキャッチしてプロジェクトをより保守しやすくすることを目的とした追加のルールを適用する新しい'strict'フラグを追加した。
新しいフラグは、新しいプロジェクト(ng new --strict)を生成する、またはtsconfig.base.jsonに'strict: true'を追加することによって使用できる。
strictフラグを有効にすると、プロジェクトに次のような影響がある。
- TypeScriptでstrictモードを有効にする
- テンプレートタイプチェックをStrictに変更する
- デフォルトのバンドルバジェットを最大75%削減する
- タイプの宣言を防ぐためにlintルールを設定する
- アプリを副作用のないものとして構成し、より高度なTree Shakingを有効にする
新しいフラグを有効にすると、開発者は'any'タイプを(暗黙的または明示的に)使用できなくなることに注意することが特に重要である。これは良い習慣であると考えられているが、既存のプロジェクトをこの新しい標準に変換することは難しい場合がある。
Angular 10は、Internet Explorer 9、10、Internet Explorer Mobileなどいくつかの古いブラウザーのサポートも打ち切る。廃止されたブラウザーはベンダーによってサポートされておらず、市場シェアがわずかであるため(Statcounterによると、使用率の合計は0.2%未満)、既存のプロジェクトへの影響は最小限に抑えられる。
これらの変更に続いて、デフォルトのブラウザー構成も更新される。古くて使用頻度の低いブラウザーは含まれなくなり、Chrome、Edge、Firefox、Safariの最新バージョンのサポートが残る。副作用として、ES5サポートはデフォルトでは生成されなくなった。
削除されたブラウザーを引き続きサポートする必要がある開発者は、.browserlistrcファイルを更新することでいつでもサポートできる。
最後に、Angular 10には次の依存関係の更新が含まれる。
- TypeScript 3.9
- TSLib v2.0
- TSLint v6
既存のプロジェクトをAngular 10にアップグレードするには、次のコマンドを実行するだけである。
ng update @angular/cli @angular/core
Angular 10リリースの詳細については、公式ブログの投稿を参照するか、アップグレードガイドに直接アクセスして、詳細なアップグレード手順を確認する。
AngularはMITライセンスの下で利用可能なオープンソースソフトウェアである。AngularのGithubリポジトリへの貢献を歓迎する。