将变量传递给模板回调

时间:2014-11-17 20:17:33

标签: javascript meteor iron-router

最近我开始熟悉流星平台,我偶然发现了两难: 有没有办法将变量传递给Template.rendered,Template.created回调。 假设我有路线

Router.route('/profile/:_id', {
    name: 'profile'
});

我希望以某种方式将该_id变量传递给Template.rendered回调:

Template.profile.rendered = function () {
    //how can I get "_id" in here?
};

这可能吗?如果是这样我该怎么办?

1 个答案:

答案 0 :(得分:1)

通常在声明路径时,还要指定要提供给将要呈现的模板的数据上下文:

Router.route('/profile/:_id', {
  name: 'profile',
  data: function(){
    return Meteor.users.findOne(this.params._id);
  }
});

通过这种方式,您可以引用来自分配给配置文件模板的当前数据上下文的用户_id,如下所示:

Template.profile.rendered = function () {
  console.log(this.data._id);
};