重新呈現時,封閉的Marionette視圖不應該重新委託定義的事件(events,modelEvents,CollectionEvents)嗎?呈現封閉的Marionette視圖
看起來好像我必須在關閉並重新呈現視圖後手動調用delegateEvents。否則,該視圖將無法按預期工作。
var app = new Marionette.Application();
app.addRegions({
main: '.main'
});
var MyView = Marionette.ItemView.extend({
template: _.template('Hi, I\'m a view! Foo is: <%= foo %>'),
modelEvents: {
'change': 'onChange'
},
onChange: function() {
alert('change!');
}
});
var Model = Backbone.Model.extend({});
app.addInitializer(function() {
var m = new Model({foo: 'bar'});
var myView = new MyView({
model: m
});
app.main.show(myView);
myView.close();
app.main.show(myView);
m.set({foo: 'baz'});
});
$(document).ready(function(){
app.start();
});
它應該和它做的,你可能在視圖中做錯了什麼,你可以粘貼你的問題視圖的代碼 – ekeren
看看這個小提琴:http:// jsfiddle。淨/ 4DCeY /如果一切都正常工作,應顯示警報消息 –