此问题专门与after.js
有关我已成功将自定义数据传递到render
函数中,但是它似乎仅在服务器渲染的挂载上工作(是正确的单词吗?),而在使用react-router的Link
时却不起作用零件。相同的数据不再存在(undefined
)。
这是我们server.tsx的摘录:
const html = await render({
req,
res,
routes,
assets,
document: Document,
customRenderer,
// This "global data" needs to be used by our app
globalData: cmsService.data,
});
这也是要解决/测试的棘手问题,因为after.js的current published version没有一个关键的修补程序-允许设置传递给getInitialProps
的自定义数据,因此我必须使用我不想做的软件包的本地版本。有关更多信息,请参见此PR:https://github.com/jaredpalmer/after.js/pull/157
在页面组件中,我需要执行以下操作:
public static async getInitialProps({globalData}) {
return {
globalData,
};
}
这将允许页面通过globalData
访问this.props
。
就像我在帖子顶部所说的那样,这在服务器渲染的页面上可以正常工作,而在客户端渲染的页面上却不能正常工作。我正在尝试自己解决此问题,但确实希望获得一些帮助,以了解要查找的位置。