6) Thông lượng
Nếu quá trình phát triển giao diện người dùng ở quy mô nhỏ thì có thể quản lý bằng cách chuyển đổi nó thành các thành tỷ lệ cá cược bóng đá châu âu, nhưng khi quy mô tăng lên, các thành tỷ lệ cá cược bóng đá châu âu khác nhau sẽ tương tác theo cách phức tạp, dẫn đến sự kiện phức tạp
Facebook đã đưa ra kiến trúc Flux để giải quyết vấn đề này

Sơ đồ trên thể hiện kiến trúc Flux Vai trò của mỗi người như sau
| Tên | Vai trò |
|---|---|
| Chế độ xem phản ứng | Giao diện người dùng được xác định trong ReactcreateClass |
| Người sáng tạo hành động | Lớp có các phương thức hành động Để cập nhật giá trị Store từ UI, bạn phải trải qua lớp này |
| Người điều phối | Lớp quản lý sự kiện để thông báo rằng một hành động đã được thực hiện |
| Cửa hàng | Một lớp lưu trữ dữ liệu mà ứng dụng cần Cập nhật giá trị sau khi nhận được thông báo sự kiện của Người điều phối |
Tôi nghĩ nếu bạn viết giải thích như thế này thì sẽ khó hiểu nên tôi sẽ giải thích bằng ReactRadarScope kèm theo ví dụ
Trước tiên, chúng ta hãy xem lớp Dot, một thành tỷ lệ cá cược bóng đá châu âu giao diện người dùng Dấu chấm là vòng tròn biểu thị thứ hạng của OSS Radar Scope®

Khi chuột di chuột qua Dấu chấm này, lệnh gọi lại sau sẽ được gọi
RadarHành độngupdateSelectedOsscái nàyđạo cụsản phẩmid;
Đây sẽ là mũi tên từ ReactViews đến ActionCreators

vàRadarActionupdateSelectedOsschạy bộ điều phối như sau:
RadarDispatchercông vănloại hành động:Hằng sốUPDATE_SELECTED_OSSossId:ossId;
Trong ví dụ này, không có mũi tên nào trỏ tới WebAPI, nhưng RadarDispatcherdispatch được gọi trực tiếp

RadarStore chỉ định lệnh gọi lại cho RadarDispatcher, do đó quá trình được chuyển sang RadarStore
Bộ điều phối radarđăng kýchuyển đổitải trọngloại hành độngtrường hợpHằng sốUPDATE_SELECTED_OSS:_selectedOss= parseInttải trọngossId 10;Cửa hàng radaremitChange;nghỉ;mặc định:trở về đúng;trở về đúng; //Không có lỗi Cần thiết theo lời hứa trong Dispatcher;

Trong ví dụ này, hãy cập nhật giá trị của _selectedOss và thực thi RadarStoreemitChange() Các thay đổi sẽ được thông báo tới Thành tỷ lệ cá cược bóng đá châu âu chính vì nó xác định trình xử lý sự kiện cho RadarStore

Cửa hàng radaraddStoreChangeListenercái này_radarStoreChange;cái nàysetStateđã chọnOssId:Cửa hàng radargetSelectedOss;
Thành tỷ lệ cá cược bóng đá châu âu chính sử dụng giá trị được thông báosetStatevà cập nhật trạng thái Thành tỷ lệ cá cược bóng đá châu âu con sử dụng selectedOssId sau đó sẽ được vẽ lại
Thoạt nhìn có vẻ tẻ nhạt nhưng luồng dữ liệu một chiều giúp ứng dụng của bạn trở nên đơn giản Hiệu quả của kiến trúc này trở nên rõ ràng hơn khi quy mô tăng lên
Mặt khác, đối với các ứng dụng nhỏ, kiến trúc nặng nề như vậy sẽ chỉ làm tăng số dòng mã nguồn và tôi không nghĩ bạn sẽ có thể trải nghiệm được niềm vui
