Tôi thường đăng những thứ liên quan đến mã trên Stack, nhưng đây là câu hỏi nhiều hơn về suy nghĩ chung của cộng đồng.
Có vẻ như có rất nhiều người ủng hộ việc sử dụng Redux với React để quản lý dữ liệu / trạng thái, nhưng trong khi đọc và học cả hai, tôi đã bắt gặp một số điều có vẻ không ổn.
Redux
Ở cuối trang này: http://redux.js.org/docs/basics/UsageWithReact.html (Vượt qua cửa hàng), nó khuyên bạn nên sử dụng "Magic" của React 'Context'.
Một tùy chọn sẽ là chuyển nó làm chỗ dựa cho mọi thành phần container. Tuy nhiên, nó trở nên tẻ nhạt, vì bạn phải truyền lưu trữ ngay cả thông qua các thành phần trình bày chỉ vì chúng tình cờ hiển thị một vùng chứa sâu trong cây thành phần.
Tùy chọn mà chúng tôi đề xuất là sử dụng một thành phần React Redux đặc biệt được gọi để làm cho cửa hàng có sẵn một cách kỳ diệu cho tất cả các thành phần vùng chứa ...
Phản ứng
Trên trang React Context ( https://facebook.github.io/react/docs/context.html ), nó có một cảnh báo ở trên cùng:
Ngữ cảnh là một tính năng nâng cao và thử nghiệm. API có thể sẽ thay đổi trong các bản phát hành trong tương lai.
Sau đó ở dưới cùng:
Cũng như các biến toàn cục tốt nhất nên tránh khi viết mã rõ ràng, bạn nên tránh sử dụng ngữ cảnh trong hầu hết các trường hợp ...
Không sử dụng ngữ cảnh để chuyển dữ liệu mô hình của bạn qua các thành phần. Luồng dữ liệu của bạn thông qua cây một cách rõ ràng dễ hiểu hơn nhiều ...
Vì thế...
Redux khuyên bạn nên sử dụng tính năng React 'Context' thay vì truyền store
xuống từng thành phần thông qua 'props'. Trong khi React khuyến nghị điều ngược lại.
Ngoài ra, có vẻ như Dan Abramov (người tạo ra Redux) hiện đang làm việc cho Facebook (người tạo ra React), chỉ làm tôi bối rối thêm.
- Tôi đang đọc tất cả những điều này đúng không ..?
- Sự đồng thuận chung hiện tại về vấn đề này là gì ..?