Как правильно вызвать функцию конструктор внутри render в Backbone?
Добрый вечер. Никак не могу решить головоломку...
мне нужно создать график используя backbone.js и любую библиотеку (использую chart.js)
код html ...
-div class="container"-
-canvas id="myChart" width="100" height="100"--/canvas-
-/div-
...(убрал скобки т.к изза них не показывает блок)
код js ...
var ChartView = Backbone.View.extend({
className: "chart",
initialize: function () {
this.render();
},
render: function () {
var ctx = $('#myChart'); //доступ к элементу canvas есть
var data = this.model.get("data"); //доступ к данным есть
var options = this.model.get("options"); //доступ к данным есть
this.$el.html( new Chart(ctx, {data, options}) ); // ошибка тут( перепробовал кучу разных вариантов.. но уже не знаю что делать....
}
});
var chart = new NewChart;
var chartView = new ChartView({model: chart});
...
ошибка:
Chart.js:4210 Uncaught TypeError: Chart.controllers[meta.type] is not a constructor(…)
Сам себе человек аркестр))
Пишу ответ, мало ли кому то пригодится.
Все дело было в том что я неправильно передавал данные в функцию создания таблицы...
Правильно так -
render: function () {
var ctx = $('#myChart');
this.$el.html( new Chart(ctx, this.model.toJSON()) );
}