, если у вас есть dataframe, а не векторы:
lst[which.max(sapply(lst,nrow))]
data
lst <- list(df1, df2, df3)
Глядя на аннотированный источник , я вижу, что Backbone вызывает define
, когда он обнаруживает, что он работает с загрузчиком AMD. Использование shim
с модулем, вызывающим define
, приводит к неопределенному поведению, потому что shim
предназначен для модулей, которые не вызывают define
.
Вы можете достичь того, чего хотите, с поддельным модулем backbone
, подобным этому, который вы сохранили бы в файле с именем backbone-glue.js
:
define(['backbone'], function (Backbone) {
var originalSync = Backbone.sync;
Backbone.sync = function(method, model, options) {
options.beforeSend = function(xhr) {
xhr.setRequestHeader('X-CSRFToken', window.csrf_token);
}
return originalSync(method, model, options);
};
return Backbone;
});
И тогда вы должны иметь такая карта в вашей конфигурации для RequireJS:
map: {
'*': {
backbone: 'backbone-glue'
},
'backbone-glue': {
backbone: 'backbone'
}
}
Что это значит, что везде (*
), когда требуется модуль backbone
, RequireJS загружает backbone-glue
. Однако в backbone-glue
, когда требуется backbone
, загружается backbone
. Это позволяет backbone-glue
загружать оригинальную магистраль.