Meteorjs:我如何使用模板助手中模板事件中定义的变量?

5 javascript mongodb meteor

这是我的事件代码:

    Template.pricing_report.events({
        'click #btn_report_filter': function(){

        from_date = $("#datepicker1").val();
        to_date = $("#datepicker2").val();


        date_n = new Date(from_date);
        from_iso = date_n.toISOString();

        date_o = new Date(to_date);
        to_iso = date_o.toISOString();
    }

});
Run Code Online (Sandbox Code Playgroud)

我想使用变量from_isoto_iso我的助手,如下所示:

Template.pricing_report.helpers({

    'preportdata':function(){
        return price.find();
},

    'preportdata_test':function(){
        return price.find({
            date: {
                $gte: from_iso,
                $lt:  to_iso
            }
        });
}
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我已经在find函数中使用了my from_isoto_iso但是我无法获得辅助函数的值.

我也尝试console.log在我的帮助函数中使用(from_iso),但它也没有显示任何内容.

那么,我该如何使用这些变量呢?

jul*_*rko 2

您应该阅读有关 ReactiveVar 的内容:http://docs.meteor.com/#/full/reactivevar_pkg

快速示例:

Template.pricing_report.onCreated(function () {
    this.date_n = new ReactiveVar();
});

Template.pricing_report.events({
    'click #btn_report_filter': function (e, tmpl) {

        tmpl.date_n.set(new Date(from_date)); 

    }
});

Template.pricing_report.helpers({
    'helperName':function () {
        var tmpl = Template.instance();
        return tmpl.date_n.get();
     });
}
Run Code Online (Sandbox Code Playgroud)