Tôi có một thành phần phụ mà tôi muốn hiển thị/ẩn theo cách động, giống như thành phần thu gọn của Bootstrap. Nút kích hoạt khả năng hiển thị nằm ở chế độ xem bên ngoài (không phải bên trong chế độ xem phụ).Cách hiển thị/ẩn thành phần hoạt ảnh trong Aurelia
Khi sử dụng các cú pháp cơ bản
<compose view-model="edit-x" model.bind="x" show.bind="shouldShow"></compose>
(hoặc cú pháp tương ứng với tên phần tử tùy chỉnh html), nó hoạt động, nhưng nó chỉ xuất hiện (không động).
Đề xuất 1 - sử dụng Aurelia hoạt hình
tôi đã cố gắng thêm một class='au-animate'
không có hiệu lực thi hành (cũng bao gồm các aurelia-phim hoạt hình-css trong main.js cho điều đó).
Đề xuất 2 - Sử dụng Bootstrap
Một giải pháp khả thi có thể là có lẽ để sử dụng Bootstrap, và vượt qua trong một tham số thứ hai (visible) với thành phần, sau đó có các thành phần một cách nào đó theo dõi rằng biến và cuộc gọi $('.collapse').collapse('toggle')
. Làm thế nào tôi sau đó sẽ vượt qua trong hai biến trong model.bind
? Và làm thế nào để theo dõi nó? Bạn có thể sử dụng @bindable
trên setter không?
Đề xuất 3 - Sử dụng Bootstrap từ các thành phần bên ngoài
Có lẽ đơn giản nhất sẽ được gọi $('#subcomponentName .collapse').collapse('toggle')
từ cái nhìn bên ngoài? Nó xấu xí này? Tôi làm các yếu tố tham chiếu trong chế độ xem phụ từ chế độ xem bên ngoài, có thể vượt qua một số ranh giới, nhưng mã sẽ nhỏ?
aurelia-animator-css chỉ khởi động nếu chế độ xem bị xóa khỏi DOM, mà 'show.bind' không thực hiện, nó chỉ ẩn phần tử. Thay vào đó hãy thử 'if.bind =" shouldShow "'. – Gusten
@ Bạn có muốn gửi câu trả lời này làm câu trả lời không? Tôi nghĩ nó giải quyết được vấn đề –