2015-06-09 1 views
3

Я ссылаюсь на это question и document Я знаю, как пузыриться.Есть ли базовый marionette.js родительский взгляд на пузырь?

Но в моей ситуации я хочу опуститься.

Точно так же, как я нажимаю кнопку на родительском представлении, а затем запускаю какую-то функцию всего моего дочернего вида.

var parent = Marionette.CompositeView.extend({ 
    triggers: { 
     'click #edit': "??" // trigger the childview 
    } 
}) 

выше только код для описания моей концепции.

Редактировать

Или, может быть, не использовать марионетку, можно использовать основу, чтобы сделать трюк?

Кто-нибудь знает, как это сделать?

благодаря

ответ

4

Если вы используете марионетка, то вы можете получить доступ ко всем своим видом ребенка с this.children. Свойство children делегирует некоторые функции подчеркивания, такие как invoke, поэтому вы можете позвонить по телефону this.children.invoke. Что-то вроде этого может работать для ваших нужд:

var ChildView = Marionette.ItemView.extend({ 
    template: _.template('child'), 

    myChildFunction: function() { 
    console.log('child view', this); 
    } 
}); 

var ParentView = Marionette.CompositeView.extend({ 
    template: _.template('<button id="edit">Edit</button><div class="children"></div>'), 

    childView: ChildView, 

    childViewContainer: '.children', 

    events: { 
    'click #edit': 'triggerChildren' 
    }, 

    triggerChildren: function() { 
    this.children.invoke('myChildFunction'); 
    } 
}); 
+0

Действительно благодарю вас !!!! Ваш ответ помогает мне! –

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

  • Нет связанных вопросов^_^