datepicker: shows date using provided LOCALE_ID but parses date using default US locale (or a combination of them)
- 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ả
#### Bug, feature request, or proposal:
Bug. I don't think it is working like that on purpose.
#### What is the expected behavior?
Date picker uses provided en-GB LOCALE_ID for parsing typed in date - 27/10/2018 input manually by typing is valid
#### What is the current behavior?
Typed date is parsed using US locale - 27/10/2018 input manually is invalid, 12/01/2018 is December, not January.
#### What are the steps to reproduce?
https://stackblitz.com/edit/angular-datepicker-locale?file=main.ts
1. Select 27/10/2018 using date picker.
2. Modify the date by editing the input to 26/10/2018
3. Observe invalid input
#### What is the use-case or motivation for changing an existing behavior?
Make material datepicker great again! But seriously: it seems like if a culture is provided it should affect both parsing and formatting aspects of dealing with dates and not format it into a date which is considered invalid when updated by typing.
#### Which versions of Angular, Material, OS, TypeScript, browsers are affected?
As in demo: Angular 7.1.0 Material 7.1.0. It fails validation on chrome if day (month?) is over 12, but on IE 11 is more curious as it modifies the year, I am fairly sure the swap issue causes it to work incorrectly on any browser.
#### Is there anything else we should know?
I think it may have been an issue with parsing the text date from text - it seems like it would parse using US culture ignoring provided locale.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu với StackBlitz được liên kết và main.ts của nó, tái hiện hành vi của datepicker en-GB bằng cách chọn rồi chỉnh sửa một ngày. Theo dõi cách datepicker định dạng và phân tích dữ liệu nhập được gõ vào, sau đó xác minh rằng các ngày như 27/10/2018 được chấp nhận nhất quán với locale được cung cấp và reproduction hiện tại không còn thất bại khi validation.
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, internationalization
- 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
- 42/100