Как вы устанавливаете имя функции jsonpCallback для метода выборки backbonejs? Чтобы добавить к проблеме, я также использую requireJS, поэтому я стараюсь не иметь глобальной функции и следовать шаблону AMD.
Причина, по которой я не могу использовать автоматически сгенерированное имя метода из jquery, заключается в том, что разработчик API, который я использую, хочет иметь статическое имя для метода обратного вызова по причинам кэширования.
Пример кода
define([
'jquery',
'underscore',
'backbone',
'marionette',
'paginator',
'models/item'], function($, _, Backbone, Marionette, Paginator, modelItem) {
'use strict';
var PaginatedCollection = Paginator.requestPager.extend({
model: modelItem,
paginator_core: {
jsonpCallback : 'callbackFunc',
type: 'GET',
cache: true,
dataType: 'jsonp',
},
callbackFunc : function(data) {
console.log(data);
}
});
return PaginatedCollection;
});
Сообщение об ошибке
TypeError: callbackFunc не является функцией
callbackFunc
быть глобальным? - person Paul Grime   schedule 11.04.2013window.callbackFunc=...
, иначе, если ошибка связана с тем, чтоjsonpCallback
передается как строка, а не как функция, попробуйтеjsonpCallback : function(data) { console.log(data); }
. - person Paul Grime   schedule 11.04.2013