首页 > 解决方案 > 在服务器端渲染期间无法在反应组件的道具中看到 staticContext

问题描述

我正在服务器端渲染一个应用程序,服务器代码如下所示

const markup = renderToString(
<StaticRouter context={{a:1}} location={req.url}>
<App d='8' />
</StaticRouter>
)

在 App 组件中,我正在打印道具

class App extends Component {
constructor(props){
super(props);
console.log(this)
}

但是输出没有staticContext,看起来像这样

App {
props: { d: '8' },
context: undefined,
refs: {},
updater:
 { isMounted: [Function: isMounted],
 enqueueForceUpdate: [Function: enqueueForceUpdate],
 enqueueReplaceState: [Function: enqueueReplaceState],
 enqueueSetState: [Function: enqueueSetState] } }

我正在使用 react 16.3 和 react-router-dom 4.3.1,为什么我无法访问 staticContext 属性?

标签: reactjsreact-routerserver-side-rendering

解决方案


推荐阅读