自分が参考になったブログの紹介します。 / Here are some blogs that I found helpful.
TypeScript 6の概要
- TypeScript 7(Goで実装予定)への橋渡し的リリース
- ESMがデフォルト、strict有効化などモダン化が進む
- ES5や古いモジュール(amd/umd等)は非推奨へ
Temporal API
- 新しい日付・時刻API(Dateの後継)
- タイムゾーンやカレンダーなどを強化
NgRx RFC(重要)
delegatedSignal- 別のSignalに直接書き戻す「プロキシ的Signal」
- フォームと状態の同期を簡素化
Resource Extensions
- エラー時の挙動などを拡張可能なリソースAPI
Angular関連トピック
- Signal Forms向けdebounce機能がAngular 22に予定
- セキュリティ(XSS/CSRF/Trusted Types)の話題
その他
- SpecKitなどAI駆動開発ツールの紹介
- コミュニティ動画・イベント情報
👉 全体として 「Angularエコシステムの最新動向まとめ(TS6 + NgRx進化 + Signal周り)」
問題点(従来)
- async validatorは入力ごとにAPI呼び出し
- debounceを入れると「全部のバリデーション」に影響する
Angular 22の改善
- 非同期バリデーション専用のビルトインdebounceを提供
- sync validatorは即時、asyncのみ遅延可能
Signal Formsとの統合
validateAsync()+resource()により- pending状態管理
- エラーハンドリング
- debounce を一体化
DXの改善
- RxJS(debounceTimeなど)を使わずに実装可能
- より宣言的・Signalネイティブな書き方へ
👉 全体として 「Signal Forms + async validation をシンプルにする Angular 22 の進化」
従来のE2Eテストの問題
- CSSセレクタやDOM構造に依存
- UI変更でテストが壊れやすい
提案手法
- Angularコンポーネントのプロパティでテスト
例:
angular=app-button[label="Submit"]
技術的仕組み
- Angular DevTools API(
window.ng)を利用 - コンポーネントのInput / Signal / 状態にアクセス
- Angular DevTools API(
提供ライブラリ
@playwright-labs/selectors-angular- カスタムselectorエンジン + テストユーティリティ
メリット
- DOMに依存しない
- コンポーネント契約ベースのテスト
- リファクタ耐性が高い
👉 全体として 「DOMではなくAngularのコンポーネントモデルでE2Eテストを書くアプローチ」
背景
- マイクロフロントエンドでは状態管理が複雑化
NgRx Signalsの特徴
- Signalベースの軽量状態管理
- RxJSよりシンプルで直感的
マイクロフロントエンドでの利点
- 各アプリ間で状態共有しやすい
- グローバルStoreより柔軟
設計パターン
- Signal Storeを使った分離された状態管理
- コンポーネント単位 or 機能単位での状態スコープ化
方向性
- NgRxは「Store中心 → Signal中心」へ進化中
👉 全体として 「NgRx Signalsを使った軽量で分割可能な状態管理(特にMFE向け)」