Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Iron router:访问路由器功能中的路由数据_Javascript_Meteor_Iron Router - Fatal编程技术网

Javascript Iron router:访问路由器功能中的路由数据

Javascript Iron router:访问路由器功能中的路由数据,javascript,meteor,iron-router,Javascript,Meteor,Iron Router,我有一个名为onBeforeAction的函数,用于设置会话变量page title。我想将我正在发送的数据分配给模板。如何从路由器访问该数据 我试过这样的方法: this.route('userPage', { path: '/profile/:userId', waitOn: function() { return [ Meteor.subscribe('singleUser', this.params.userId)

我有一个名为onBeforeAction的函数,用于设置会话变量page title。我想将我正在发送的数据分配给模板。如何从路由器访问该数据

我试过这样的方法:

this.route('userPage', {
    path: '/profile/:userId',
    waitOn: function() {
        return [
            Meteor.subscribe('singleUser', this.params.userId)
        ];
    },
    data: function() {
        return {
            user: Meteor.users.findOne({_id: this.params.userId}, {fields: {'username': 1, 'profile.friends': 1}})
        };
    },
    onBeforeAction: function() {
        Session.set('pageTitle', this.data.user.username); //THIS
    }
});

有什么建议吗?

这里,
这个。数据是一个函数。尝试一下:

Session.set('pageTitle',this.data().user.username);

当然可以。因此,当你点击链接,但由于某种原因而中断了导航(如果你点击后退按钮)时,它会起作用……请查看浏览器控制台中的错误。可能是其中的某些部分需要保护,如:
this.data()&&this.data().user&&this.data().user.username