microsoft / microsoft/TypeScript
Incorrect docs: type compatibility for functions with overloads
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Go
- Star
- 111k
- Fork
- 14.3k
- Merge trung bình
- 2 ngày 4 giờ
- Pull request đã merge (30 ngày)
- 132
Mô tả
Search Terms: functions with overloads, type compatibility
In the docs, it says: "When a function has overloads, each overload in the source type must be matched by a compatible signature on the target type." But it should be "When a function has overloads, each overload in the source type target type must be matched by a compatible signature on the target type source type."
Code
The actual behaviour is right:
type t1 = {
(foo: string): string
(foo: number): number
}
type t2 = {
(foo: string): string
}
declare let v1: t1;
declare let v2: t2;
v2 = v1 // OK
v1 = v2 // Error
The type on the right side of = is considered "the source type".
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Bắt đầu từ trang TypeScript Handbook được liên kết về tính tương thích kiểu và tìm phần mô tả tính tương thích của các overload. So sánh cách diễn đạt với ví dụ gán được cung cấp, sau đó cập nhật tài liệu nguồn để các kiểu nguồn và kiểu đích được mô tả nhất quán. Kiểm tra trang đã được render và hành vi được nêu của ví dụ.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- typescript
- Lĩnh vực
- documentation
- Loại issue
- Tài liệu
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức phù hợp với người mới
- 68/100