Я пишу приложение с базой (с требованием) и вам нужно выполнить поиск по коллекции, чтобы вытащить первую модель (я использую уникальный идентификатор, так что будет только один) ,Backbone collection.findWhere issue - Ошибка при сборе
Проблема у меня в том, что я получаю сообщение об ошибке:
Uncaught TypeError: Object [object Object] has no method 'findWhere'
Когда добраться до линии с помощью команды findWhere.
инициализации мнение:
initialize: function (models) {
this.locationCollection = new LocationCollection();
this.locationCollection.fetch();
this.render();
},
Я тогда доступ к locationCollection позже в другом методе, первая строка метода, где происходит ошибка:
createCrate: function (eventname) {
var setLocationList = this.locationCollection.findWhere({ Name: $('#location').val() });
console.log($('#location').val());
console.log(setLocationList);
},
Вот код объявления LocationCollection:
define([
'jquery',
'underscore',
'backbone',
'model/LocationModel'
], function ($, _, Backbone, LocationModel) {
var LocationCollection = Backbone.Collection.extend({
model: LocationModel,
url: "/api/locations"
});
return LocationCollection;
});
Я могу получить доступ к элементам в этом документе. Собирайте в другом месте в представлении и выводите их в базовое расширение типа head, так что коллекция была заполнена.
Любая идея, почему эта коллекция не может вызвать findWhere?
Вы можете добавить код объявления для LocationCollection? – ne8il
Случайное предположение: версия подстроки <1.4.4 или Backbone <1.0.0? – nikoshr
Ах. Spot on: Backbone 0.9.9 и Underscore 1.4.3 –