Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Backbone, либо сам JS, либо я (https://javascript.ru/forum/misc/21021-backbone-libo-sam-js-libo-ya.html)

p00h 26.08.2011 08:30

Backbone, либо сам JS, либо я
 
Коллеги, здравствуйте!
Очевидно, вопрос из базовой теории JS, но никак не могу понять что к чему...
Определяем backbone модель, коллекцию, пытаемся получить модели с помощью Collection.fetch, в обработчике success объект collection корректен, заполнен. В общем, смотрите сами, надеюсь, кто-то сможет ткнуть носом
// Определяем объект модели в глобальном scope
var model = Backbone.Model.extend({
	initialize: function(){
		alert('ff');
	}
});

// Определяем объект коллекции в глобальном scope
var collection = Backbone.Collection.extend({
	model: model,
	// Урл возвращает [{'id':1, 'name':'first'},{'id':2, 'name':'second'}]
	url: '/cabinet/getbody'
});

// Создаем экземпляр коллекции
var modules = new collection();
// Заполняем коллекцию моделями
modules.fetch({
	success: function(collection, response){
		// Пишет в консоль корректное значение 'first'
		console.log(collection.at(0).get('name'));
	}
});
// Пишет: modules.at - not defined
console.log(modules.at(0).get('name'));

B@rmaley.e><e 26.08.2011 08:40

modules.fetch, видимо, надстройка над AJAX'ом, а он асинхронен.

p00h 26.08.2011 09:27

Мдя, ум за разум зашел. Спасибо.


Часовой пояс GMT +3, время: 17:19.