Tôi đang nghiên cứu về một ứng dụng front-end có độ phức tạp trung bình. Tại thời điểm này, nó được viết bằng javascript thuần túy, nó có rất nhiều thông báo dựa trên sự kiện khác nhau kết nối một số phần chính của ứng dụng này.
Chúng tôi quyết định rằng chúng tôi cần triển khai một số loại vùng chứa trạng thái cho ứng dụng này trong phạm vi tái cấu trúc thêm. Trước đây tôi đã có một số kinh nghiệm với redux và ngrx store (thực sự tuân theo các nguyên tắc tương tự).
Redux là một lựa chọn cho chúng tôi, nhưng một trong những nhà phát triển đã đề xuất sử dụng thư viện dựa trên máy trạng thái, cụ thể là thư viện xstate .
Tôi chưa bao giờ làm việc với xstate, vì vậy tôi thấy nó thú vị và bắt đầu đọc tài liệu và xem các ví dụ khác nhau. Trông có vẻ đầy hứa hẹn và mạnh mẽ, nhưng tại một số thời điểm tôi hiểu rằng tôi không thấy bất kỳ sự khác biệt đáng kể nào giữa nó và redux.
Tôi đã dành hàng giờ để cố gắng tìm câu trả lời hoặc bất kỳ thông tin nào khác để so sánh xstate và redux. Tôi không tìm thấy bất kỳ thông tin rõ ràng nào, ngoại trừ một số bài báo như "chuyển từ redux sang máy trạng thái" hoặc liên kết đến các thư viện tập trung vào việc sử dụng redux và xstate cùng nhau (khá lạ).
Nếu ai đó có thể mô tả sự khác biệt hoặc cho tôi biết khi nào các nhà phát triển nên chọn xstate - bạn được hoan nghênh.