Tôi dường như không thể có được các loại chính xác trong luồng để làm việc với sự lây lan của đối tượng.Lây lan đối tượng với các kiểu dòng chính xác
type Point = {| x: number, y: number |};
const p1: Point = { x: 10, y: 10 };
const p2: Point = { ...p1, y: 5 };
Tạo lỗi đối tượng theo nghĩa đen. loại không chính xác là không phù hợp với loại chính xác
này does't tạo ra một lỗi, nhưng sẽ thay đổi p1:
const p3: Point = Object.assign(p1, {y: 5});
Sử dụng Object.assign với một đối tượng rỗng cũng sản xuất cùng đối tượng đen lỗi:
const p4: Point = Object.assign({}, p1, {y: 5});
Nếu tôi sử dụng type Point = {x: number, y: number};
thì đối tượng lan truyền hoạt động, nhưng lý tưởng tôi muốn sử dụng loại chính xác.
Cảm ơn câu trả lời của bạn, tôi chỉ tìm thấy vấn đề ở đây https://github.com/facebook/flow/issues/2405 Tôi đang thử giải pháp 'hiện tại chính xác = T & $ Shape ;'. –
Andy