未调用流星模板 onRendered 回调

Meteor Template onRendered callback not called

我正在尝试将 chartist.js 与我的流星应用程序一起使用。我将它的代码放在 Template.reportPage.onRendered() 中,以便在插入模板 DOM 后生成条形图。我试着发出警报,发现它从未被调用过。我也在 Template.reportPage.helpers 中定义了一个助手,它运行良好。

我遇到错误:

[Error] TypeError: undefined is not a function (evaluating 'Template.reportPage.onRendered')
    (anonymous function) 

这是我的代码:

Template.reportPage.onRendered(function(){
    var data = {};
    var orders = Orders.find({
        created_at: {
            //query for month 3
            $gt: new Date(2015, 2, 0),
            $lte: new Date(2015, 3, 0)
        }
    }, {sort: {created_at: 1}} ).fetch(); //ascending

    data.series = [[]];

    var noOfDays = new Date(2015,3,0).getDate()

    data.labels = _(noOfDays).times( function(n) {
        data.series[0][n] = 0;
        return n+1;
    });

    orders.forEach(function(order, index, array){
        var date = order.created_at.getDate();
        data.series[0][date-1]++;
    });
    console.log(data);
    alert('comon');
    new Chartist.Bar('#orderVsTime', data); //put chart in element with #orderVsTime

 });

onRendered 方法是 meteor 版本 1.0.4 新添加的。您确定您的应用程序版本是 1.0.4 吗?如果没有,请尝试通过 meteor update 更新。如果您不想更新,可以尝试已弃用的版本:

Template.reportPage.rendered = function () {
  // your code 
}