Я работал с Require и DataTables до этого, но это мой первый раз, когда вы действительно настраиваете вещи. Я удалил некоторые из чувствительных файлов, вызываемых в коде ниже, но я думаю, что это все, что вам нужно, чтобы помочь.DataTables не инициализируется с использованием RequireJS/Backbone
Я видел смешанные сообщения о том, нужно ли добавлять только минимальный путь JS или вам нужны оба. Поскольку нет ошибок, кажется, что все правильно вызвано. Кроме того, я слышал смешанные сообщения о необходимости прокладки для DataTables. Все ли кажется правильным? У меня есть стандартная таблица в файле handlebars, заполненном json-файлом. Дайте мне знать, если вам нужны те, которые показаны.
Первый раздел кода из файла require.config, последний фрагмент из моего представления для файла handlebars.
requirejs.config({
// baseUrl: "js",
paths: {
backbone: "bower_components/backbone/backbone",
jquery: "bower_components/jquery/dist/jquery",
jqueryBridget: "bower_components/jquery-bridget/jquery.bridget",
jqueryui: "bower_components/jquery-ui/jquery-ui",
modernizr: "bower_components/modernizr/modernizr",
datatables: "bower_components/datatables/media/js/jquery.dataTables.min"
},
shim: {
underscore: {
exports: "_"
},
jquery: {
exports: "$"
},
modernizr: {
exports: "Modernizr"
},
backbone: {
deps: ["jquery", "underscore"],
exports: "Backbone"
}
}
});
define(["marionette", "hbs!apps/project/templates/components/project-funds/project-funds-performancetable", "datatables"],
function (Marionette, projectFundsPerformanceTableTemplate, DataTables) {
var ProjectFundsPerformanceTableView = Marionette.ItemView.extend({
template: projectFundsPerformanceTableTemplate,
initialize: function() {
this.deferred = this.model.fetch({
reset: true,
// dataType: "jsonp",
success: (function() {
// alert(' Service request success: ');
}),
error: (function (e) {
// alert(' Service request failure: ' + e);
}),
complete: (function (e) {
// alert(' Service request completed ' + e);
})
});
this.model.on("reset", this.render);
},
onShow: function(){
$('#ce--funds--performanceTable').DataTable();
}
});
return ProjectFundsPerformanceTableView;
});
datatables требует jquery try ading a прокладка с зависимостями –
@NikosM. Я попытался добавить datatables: ["jquery"] и datatables: {deps: ["jquery"]}. Ни работали – elpeterson