Tôi đang tạo biểu mẫu dựa trên om là các phần phụ có thể được xem hoặc bị thu gọn hoặc mở rộng. Tình trạng xem được lưu trong phần phụ nhà nước địa phương:Om cojurescript: xử lý các thay đổi trạng thái cục bộ trong các thành phần khác nhau
(defn subsection-view [subsection owner] (reify om/IInitState (init-state [this] {:collapsed true}))
Vấn đề là mỗi phần phụ xem trạng thái có thể được thực hiện cả hai cách, hoặc bằng sự sụp đổ-mở rộng-tất cả các nút hoặc bằng một nút riêng biệt hiển thị cho mỗi tiểu mục .
Để xử lý mở rộng-nén-tất cả ở đó là một tình trạng sụp đổ toàn cầu lưu trong tình trạng hình thức địa phương:
(defn form-view [data owner] (reify om/IInitState (init-state [this] {:all-collapsed true})))
Rõ ràng cả hai nút on-click
sự kiện được xử lý bằng cách cập nhật tình trạng sụp đổ trong tình trạng địa phương.
(om/update-state! owner :collapsed not)
Câu hỏi của tôi là làm thế nào tôi nên biết được tình trạng bị cập nhật lần cuối để hiển thị xem đúng không?
Hoặc ở đâu là đúng nơi (trạng thái địa phương hoặc trạng thái ứng dụng) để lưu trạng thái thu gọn có thể được thực hiện từ các trình kích hoạt khác nhau ở các cấp khác nhau của cây thành phần?