正确的babel配置用于使用React进行服务器端渲染吗?

时间:2019-01-26 04:36:51

标签: reactjs babeljs server-side serverside-rendering

我第一次尝试进行服务器端渲染,而我只是想让Node运行我的服务器文件而不会在<App />上抛出错误:

<div id="root">${ReactDOMServer.renderToString(<App />)}</div>
SyntaxError: Unexpected token <

我能够从Google搜索中获得的唯一帮助带来了过时或看似不好的建议(例如:使用babel-node,这对于生产来说太重了)。任何人都可以深入研究我的代码并给我一些建议吗?

https://github.com/gigamesh/aud.io/tree/temporary-demo

1 个答案:

答案 0 :(得分:0)

在文件server.js中,为什么将 babel-register 插件注释掉? 应该可以完全解决这个问题。
尝试取消注释,并添加.tsx扩展名,如下所示:

require("babel-register")({
   extensions: [".tsx", ".es6", ".es", ".jsx", ".js"],
 });

那应该可以解决问题。

顺便说一句,您可以尝试使用较新的@babel/register