2013-12-09 2 views
2

Существует официальная поваренная книга для использования диалога с угольком, который использует компонент: http://emberjs.com/guides/cookbook/user_interface_and_interaction/using_modal_dialogs/Как просто обернуть 2-модальный диалог загрузки в компоненте ember?

То, что я хотел бы сделать, это использовать щебетать Bootstrap диалог 2 вместо этого.

Это действительно работает, за исключением closeModal action.

Мне нужно зарегистрировать обратный вызов события бутстрапа «скрытый», который вызывает действие close, но мои попытки не были успешными.

App.ModalDialogComponent = Ember.Component.extend({ 
    didInsertElement: function() { 
     this.$('.modal').modal('show'); 
     this.$('.modal').on("hidden", function() { 
      // how to trigger the close action from here ? 
     }); 
    }, 
    actions: { 
     close: function() { 
      return this.sendAction(); 
     } 
    } 
}); 

Вот полный jsFiddle: http://jsfiddle.net/NQKvy/417/

ответ

2

Близкое действие было не нужно вообще.

Вот рабочий jsFiddle, где я держал только необходимые детали и добавил willDestroyElement к компоненту: http://jsfiddle.net/NQKvy/421/

App.ModalDialogComponent = Ember.Component.extend({ 
    didInsertElement: function() { 
     var self = this; 
     this.$('.modal').modal('show'); 
     this.$('.modal').on("hidden", function() { 
      self.sendAction(); 
     }); 
    } 
}); 
1

сделайте следующее

App.ModalDialogComponent = Ember.Component.extend({ 
    didInsertElement: function() { 
     self=this 
     this.$('.modal').modal('show'); 
     this.$('.modal').on("hidden", function() { 
      self.send('close') 
     }); 
    }, 
    actions: { 
     close: function() { 
      return this.sendAction(); 
     } 
    } 
}); 
+0

Спасибо, я был уверен, что это была моя первая попытка (вызов self.send ("Закрыть '))! Но я, должно быть, сделал что-то еще не так. Во всяком случае, я добавил в другом ответе решение, которое я использую для справки. Обязательно посмотрите на это, если вы прочитаете этот вопрос. –

Смежные вопросы