angular / angular/components

Reactive forms inside virtual scroll list yield buggy behaviour

Đang mở
#13,846 9 bình luận 2 reaction 0 người được giao Xem trên GitHub
area: cdk/scrolling P3
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ả

## I'm submitting a...



[ ] Regression (a behavior that used to work and stopped working in a new release)
[x] Bug report
[ ] Performance issue
[ ] Feature request
[ ] Documentation issue or request
[ ] Support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
[ ] Other... Please describe:

## Current behavior

Reactive forms inside a virtual scroll list, should behave as expected. It looks like virtual scroll takes over and manipulates index which yields in erratic behaviour. If we check the last item in form array as checked and then go back to top and come back again to bottom, it is marked checked again. Tried external index as well but that didn't help either.

## Expected behavior

Reactive forms especially checkboxes should behave normally, and their values should belong to
appropriate ones only. Marking one checked should not affect others.

## Minimal reproduction of the problem with instructions

## What is the motivation / use case for changing the behavior?

For heavy or huge reactive forms, virtual lists should render form controls normally.

## Environment
Angular 7 and CDK 7



Angular version: 7.0.0

Browser:
- [x] Chrome (desktop) version 67.0.3396.87
- [x] Firefox version latest
- [x] Safari (desktop) version 12
- [x] IE version 11

Others:
Code sample can be seen on [stackblitz](https://stackblitz.com/edit/angular-mnd3k1) or [here](https://stackblitz.com/edit/angular-mnd3k1)

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách chạy bản tái hiện StackBlitz được liên kết và kiểm tra sự tương tác giữa danh sách cuộn ảo của Angular CDK với các giá trị checkbox của reactive form trong khi cuộn. Tái hiện trình tự đã được báo cáo: chọn mục cuối cùng, quay lại đầu danh sách và cuộn trở lại xuống cuối; được xem là hoàn tất khi mỗi checkbox chỉ giữ giá trị của chính nó trong suốt trình tự đó trên các trình duyệt được liệt kê.

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ó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.