Meteor正在从路由器获取数据

Meteor getting data from router

本文关键字:获取 数据 路由器 Meteor      更新时间:2023-09-26

我在从iron:router获取数据时遇到问题。我正试图通过参数获取数据_id,然后将其传递给我的template.created以设置会话变量进行编辑。

这是我在路由器中的代码:

Router.route('/edit/:_id', function(){
    this.render('edit', {
        data: function(){
                return Collection.findOne({_id: this.params._id})
        }
    })  
})

然后我想访问这里的数据:

Template.edit.created = function(){
   data = ???
   Session.set('edit', data)
   $(input).val(data.post)
}

如果我做console.log( this ),我得到Blaze.TemplateInstance

但是当我在Template.edit.events中console.log(this)时,我从iron:router中得到了我想要的文档。

我使用了Template.currentData();,并设法访问了template.created中的数据,但有人能解释一下为什么template.create和template.events中的"this"指的是两个不同的东西吗?

对于template.created和template.rendered,您可以使用this.data访问数据。