コンポーネントを使用し、Bootstrap 独自の却下機能に依存してsendAction
. willDestroyElement
物を壊すことを担当します。コードからこれを取り出したので、CoffeeScript と Emblem.js にあります。
アプリケーション.コーヒー:
ApplicationRoute = Ember.Route.extend
actions:
openModal: (modalName) ->
@render modalName,
into: "application"
outlet: "modal"
closeModal: ->
@disconnectOutlet
outlet: "modal"
parentView: "application"
モーダル-dialog.coffee:
ModalDialogComponent = Ember.Component.extend
didInsertElement: ->
@$(".modal").modal "show"
@$(".modal").on "hidden.bs.modal", => @sendAction()
willDestroyElement: ->
@$(".modal").modal "hide"
@$(".modal").off()
モーダル-dialog.embl:
.modal.fade
.modal-dialog
.modal-content
.modal-header
button.close type="button" data-dismiss="modal"
span aria-hidden="true" ×
span.sr-only Close
h4.modal-title Modal title
.modal-body
= yield
.modal-footer
button.btn.btn-default type="button" data-dismiss="modal" Close
button.btn.btn-primary type="button" Save
modal.embl:
= modal-dialog action="closeModal"
p Hello