0

这听起来像是一个愚蠢的问题,但我真的尽我所能来解决这个问题。我正在创建一个变量并将其添加到自定义 Express 服务器文件中的响应对象中,如下所示:

server.get('*', (req, res) => {
   res.locals.user = req.user || null;
   handle(req, res);
});

现在我想从我的所有页面(即index.jsabout.js等)访问这个res.locals.user对象,以便在活动会话的用户凭据上保留一个选项卡。一定有可能,对吧?

PS:阅读 NextJS Github 页面上的一些线程,我尝试从我的 props 对象访问它,this.props.user但即使服务器端console.log显示非空值,它也会继续返回 null。

4

1 回答 1

1

res对象在服务器上可用作 的参数getInitialProps。因此,使用上面的服务器代码,您可以执行

static async getInitialProps({res}) {
    return { user: res.locals.user }
}

使其作为this.props.user.

于 2017-08-31T13:45:39.517 回答