客户端用 react、服务端用 flask,那怎么给 react 做服务端渲染呢?是不是必须要在服务器安装一个 nodejs?

2017-07-27 09:34:10 +08:00
 qq12345454

感觉多装一个东西,会增加整个系统崩溃的几率, 就没有更好的办法了吗?

2209 次点击
所在节点    问与答
9 条回复
corona
2017-07-27 10:09:46 +08:00
前端用什么服务器?
ss098
2017-07-27 10:27:50 +08:00
是。

你可以把 Flask 作 API 服务器和 React 服务端渲染服务器分离。
qq12345454
2017-07-27 11:52:31 +08:00
@corona 前后分离的。前端没有服务器
qq12345454
2017-07-27 11:52:49 +08:00
@ss098 这样感觉十分的麻烦哦
ipwx
2017-07-27 11:54:00 +08:00
把编译出来的前端扔到 static 里面,让页面载入不就得了?

在 production mode 下面这个根本不需要多做什么事情。只不过调试稍微麻烦一点,你可能得自己写点代码,保证 Chrome 的缓存不会阻挡你新的 JS。至于 hot reload,别想了。
ipwx
2017-07-27 11:54:41 +08:00
@qq12345454 麻烦,但是稳妥。而且这样子以后可以慢慢做大,用 Java 替代你的 Flask 也不是什么难事。一开始就引入 NodeJS 做服务器,以后就有的受了。
qq12345454
2017-07-27 11:56:52 +08:00
@ipwx

主要是 整个系统是前后端分离,

做服务端渲染的目的有 2 个

1,是为了 seo

2,提高用户的首屏加载速度
corona
2017-07-27 22:10:41 +08:00
@qq12345454
react 的服务端渲染,你可以考虑适应 Next.js 来做。昨天刚写了篇文章介绍用 Next.js 来做 react 的服务端渲染的。
就是如果要用 Next 的话,你需要加一个 nodejs 服务器。

文章供参考,地址: http://mp.weixin.qq.com/s/JL_33s6Si05V1Whe8mYCdw
qq12345454
2017-07-27 22:23:50 +08:00
@corona 多谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/378246

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX