Tôi đang sử dụng trình quản lý vùng Marionette để quản lý chế độ xem của mình. Có ba khu vực chính: 1] khu vực trên trình đơn 2] khu vực Sidebar 3] khu vực chính (trang thực tế mà tiếp tục thay đổi)Ẩn chế độ xem trong Trình quản lý vùng, khi một chế độ xem khác được hiển thị
Tùy thuộc vào các hành động trên menu trên cùng và thanh bên tôi liên tục thay đổi quan điểm cho rằng được hiển thị trong các khu vực chính sử dụng App.MainRegion.show(view)
.
Hiện tại, có một chế độ xem cụ thể (persistView
) mà một khi được hiển thị sẽ không được đóng trừ khi tab/trình duyệt bị đóng.
Đương nhiên tôi không thể sử dụng App.MainRegion.show(view)
đây vì lý do foll:
- Khi
show(persistView)
được gọi là thời gian mọi thứ đầu tiên là ổn. - Nếu tôi điều hướng xa,
show(otherview)
sẽ gọiclose()
củapersistView
. Đó là không cần thiết.
giải pháp hiện tại của tôi là:
- Có một khu vực mới được gọi là
persistRegion
ngay dướimainRegion
. persistView
sẽ luôn được hiển thị trongpersistRegion
.- Trong
onShow()
củapersistView
, tôi giấumainRegion
và hiển thị cácperistRegion
Các công trình trên, nhưng tôi nghĩ là rất hackish. Ngoài ra tôi đang mắc kẹt khi sau bước 3] người dùng điều hướng đến bất kỳ chế độ xem nào khác. Bây giờ làm thế nào để tôi nói với persistView
rằng nó nên ẩn chính nó và hiển thị mainRegion
?
Mọi trợ giúp sẽ được đánh giá cao.
chỉ cần lưu ý: region.ensureElement() đã được thay đổi thành region.ensureEl() –
... và nó đã thay đổi một lần nữa, thành '_ensureElement()' – alxndr