0
我正在使用mozilla客户端会话与express /节点,并试图在我的标准*请求中弄清楚如何将session.user传递给react-router。我知道这可能是我错过的一件容易的事情,也许我会自己得到它,但我已经尝试过,但我失去了它在混合中的某个地方未定义。有什么想法吗?如果我能做到这一点,将取消任何和所有限制我的服务器上渲染/通用React路由器服务器渲染客户端会话信息
app.get("*", (req: any, res) => {
var props = {
user: res.locals.user
};
var html = renderToString(<SiteRouter history={createMemoryHistory(req.url)} {...props} />);
res.render("layout", { ReactMarkup: html, meta: getMeta(req.url) });
res.end();
});
export class SiteRouter extends React.Component<{ history?: any, routes?: any, children?: any, user?: any }, {}> {
render() {
var props = {
user: this.props.user
}; // user is alive here but I seem to be losing it going into the router and then its (router's) child routes.
return <Router history={this.props.history} routes={routes} {...props} />;
}
}