2014-01-04 4 views
0

Только что началось Backbone.js и после tuorials на backbonejs.org.Доступ к модели модели при событии изменения в backbone.js

Вот чего я хотел достичь. Я создал модель, которая запрашивает ширину и сохраняет ее. Теперь я использовал listenTo с object. Я создал, как показано ниже, на model, чтобы прочитать измененное значение свойства. Он вызвал changeevent, но, я всегда получаю undefined для ширины. Код ниже.

var mod = Backbone.Model.extend({ 
    askColor:function() { 
     var w = prompt("Enter width"); 
     this.set({ width:w}) 
    } 
}); 

var model = new mod(); 
model.set({width:1234}) 

var obj = {}; 
_.extend(obj,Backbone.Events); 
obj.listenTo(model, 'change', function() { 
    alert("width = "+model.width) 
}) 
model.askColor(); 

Я действительно не знаю, что мне недостает в коде, или я делаю неправильно? Пожалуйста, помогите начинающему ...

ответ

2

Атрибут width на самом деле хранится внутри model.attributes. Вы должны использовать .get(), чтобы получить атрибут width.

obj.listenTo(model, 'change', function() { 
    alert("width = "+model.get('width')) 
}) 
+0

Это решило мою проблему :) спасибо – Vinay

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