在骨幹模型中,是否可以在初始化函數中爲嵌套視圖觸發事件?我將這個例子的當前代碼作爲基礎:https://stackoverflow.com/a/8523075/2345124,並且已經爲主幹1.0.0更新了它。這裏是我的初始化函數,一個模型:初始化模型時是否可以觸發事件?
var Edit = Backbone.Model.extend({
initialize: function() {
this.trigger('marquee:add');
this.on('change', function(){
this.trigger('marquee:add');
});
}
...
}
我想打電話的時候,該模型被初始化的方法renderMarquee:
var EditRow = Backbone.View.extend({
initialize: function() {
this.listenTo(this.model, "change", this.render); // works
this.listenTo(this.model, "marquee:add", this.renderMarquee); // only called when changed, but not when initially created
...
}
renderMarquee IS當模型改變時調用,但不是在初始化時。 「更改」事件按預期工作(調用this.render)。有什麼想法嗎?
謝謝!
哦 - 我明白你在說什麼 - 我知道這很簡單。我試着聽收集'添加'事件 - 但最終有一些意想不到的行爲。仔細觀察一下,看看發生了什麼(每當我向集合中添加模型時,集合中的每個模型都會調用「add」事件)。 – ururk 2013-05-03 03:36:16