menu: trigger ExpressionChangedAfterItHasBeenCheckedError aria-expanded: null in OnPush component
- 主要言語
- TypeScript
- スター
- 25k
- フォーク
- 6.8k
- 平均マージ
- 1日 8時間
- マージ済み PR(30日)
- 91
説明
#### What is the expected behavior?
Error should not occur
#### What is the current behavior?
Repeatedly and quickly clicking on menu trigger button causes error
#### What are the steps to reproduce?
[StackBlitz](https://stackblitz.com/edit/angular-stgyux)
Click on menuTrigger repeatedly -> error shows in console
#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular 7.1.0
Angular Material 7.1.0
Chrome Browser
#### Is there anything else we should know?
ChangeDetection: OnPush
ERROR
Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'aria-expanded: true'. Current value: 'aria-expanded: null'.
コントリビューションガイド
調査の方向性
Angular と Angular Material 7.1.0 を使用するリンク先の StackBlitz の再現から始め、コンソールを監視しながら OnPush コンポーネント内のメニュー・トリガーを繰り返しクリックします。メニュー・トリガーの aria-expanded の変更を追跡し、チェックされた値が null に変わる理由を特定します。再現で ExpressionChangedAfterItHasBeenCheckedError が報告されなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- angular, typescript
- 領域
- frontend
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 38/100