Backgrid оказываетBackgrid: рендер не вызывается
<table class="backgrid"></table>
, но ничего больше. Точки останова в Backgrid: render() не достигнуты. Я новичок Blackbone, адаптирующий чей-то код, и поэтому не уверен, что именно должно произойти, но LayoutManager: render() вызывается ... он просто никогда не попадает в Backgrid ... Данные, которые я хочу отображать, и выглядят так, как будто они находятся в правильном формате ... но должны признать, что это сложно сказать, как только они были завернуты в коллекцию Backbone. Любые указатели на то, как отлаживать/почему рендер Backgrid не называется с благодарностью.
код ниже:
ListenView.js
define([
'backbone',
'underscore',
'backgrid',
'app/models/PersonModel',
'app/collections/PersonCollection',
'app/views/PersonListView',
'hbs!app/templates/listen_template'
],
function(
Backbone,
_,
Backgrid,
Person,
PersonCollection,
PersonListView,
listenTemplate
) {
App = window.App || {};
var ListenView = Backbone.View.extend({
template: listenTemplate,
initialize: function(params) {
//fetch the list of seen people
this.model.attributes.seenPeople.fetch({
success: function(coll, resp) {
//console.log(coll);
}
});
},
afterRender: function() {
//initialise person view
console.log("creating Backgrid");
this.seenPeopleView = new Backgrid.Grid({
columns: [{
name: "email",
label: "Email",
cell: "string"
},{
name: "id",
label: "ID",
cell: "integer"
}, {
name: "title",
label: "Title",
cell: "string" }
],
collection: this.model.attributes.seenPeople
});
this.seenPeopleView.render();
$('#seen-people-list').append(this.seenPeopleView.el);
}
Спасибо @Alex Suleap и извините, только что видел это. Я только что пропустил его, но он все равно просто отображает пустой