我们正在使用StaticSiteGeneratorPlugin建立网站,是一个网站插件,可以在本地呈现网站,然后我们可以将其上传到S3。
我们的代码看起来基本上像this github project
我们正在使用React Helmet来管理我们的头部,元信息以及所有这些,并且在浏览器中运行良好,但在运行prod版本时却没有。
在entry.js中我有以下内容。缺少一种将Helmet生成的字符串添加到生成的html中的方法,或者如果有一个比头盔更好的管理器,那么我们将使用的插件更好。
export default function render(locals, callback) {
const element = React.createElement(Root, props);
const helmet = Helmet.renderStatic();
const html = ReactDOMServer.renderToString(element);
callback(null, `<!DOCTYPE html>${html}`);
}
答案 0 :(得分:1)
试试这个,但是“不要写关于html的博客”:
const helmet = Helmet.renderStatic();
var html = ReactDOMServer.renderToString(element);
html.replace("</head>", helmet+"</head>");
callback(null, `<!DOCTYPE html>${html}`);