menu: trigger ExpressionChangedAfterItHasBeenCheckedError aria-expanded: null in OnPush component
- Ngôn ngữ chính
- TypeScript
- Star
- 25k
- Fork
- 6.8k
- Merge trung bình
- 1 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 91
Mô tả
#### 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'.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu với bản tái hiện StackBlitz được liên kết, sử dụng Angular và Angular Material 7.1.0, sau đó liên tục nhấp vào trình kích hoạt menu trong một component OnPush trong khi theo dõi console. Theo dõi các thay đổi của aria-expanded trên trình kích hoạt menu và xác định lý do giá trị được kiểm tra thay đổi thành null; hoàn thành khi bản tái hiện không còn báo cáo ExpressionChangedAfterItHasBeenCheckedError.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- angular, typescript
- Lĩnh vực
- frontend
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 38/100