我正在使用 react 创建一个示例页面,该页面使用renderToString()为 SEO 友好页面提供服务器端渲染。
这是我的 server.js 代码
app.get('*', (req, res) => {
match(
{ routes, location: req.url },
(err, redirectLocation, renderProps) => {
// in case of error display the error message
if (err) {
return res.status(500).send(err.message);
}
// generate the React markup for the current route
let markup;
if (renderProps) {
markup = renderToString(<RouterContext{...renderProps}/>);
} else {
res.status(404);
}
// render the index template with the embedded React markup
return res.render('index', { markup });
}
);
});
我的页面是搜索页面,最初是静态的,当用户输入输入时,它会从后端获取数据并在同一页面中呈现组件列表。
当我在浏览器中查看查看页面源时,我只能看到初始静态内容,而不是在后端响应后呈现的列表的 html。
当组件状态发生变化时,获取更新的 HTML 的正确方法是什么。