SSR 使用场景疑惑,工具站是否需要 SSR,比如 Figma, SSR 优势是什么

216 天前
 devzhaoyou

刚入门前端,对 SSR 还不太了解其使用场景,个人认为一些文字类,或者展示页面类,如博客,网站首页,落地页等使用 SSR 比较好,但一些如 figma 这种工具页面不需要用 SSR 了吧?、

或者换个问法 nextjs 的使用场景是啥,比如纯 react + vite 写不行么?

3925 次点击
所在节点    React
26 条回复
codehz
216 天前
next 搞这么复杂的一个原因就是
现代网站很少是单纯工具页面或者完全可以服务端预先生成的
即使是 figma 工具类的,起码你也可以先 ssr 生成一个框架,让 logo 或者 loading 一类的元素先一步显示出来(当然你也可以手动先搓一个 loading 的 html ,但这需要同时维护两个东西,就麻烦一些了
完全可以服务端预先生成的页面就不用说了,但更常见的情况是,一部分可以预先生成,一部分不是,比如博客和评论区(当然你可以说评论区可以不用 js ,这个不讨论)这里假设是需要 js 的评论区。。。
jorneyr
216 天前
门户网站,新闻网站、CMS 用 SSR 比较多,预先生成大量的网页保存到文件,访问的时候直接通过 Nginx 就可以,不需要访问后台每次现生成。
huijiewei
216 天前
SSR 就是为了搜索引擎优化,只是都是一条龙解决方案了。同时还可以在服务端跑一些东西,比如查询数据库,访问其他 API 跳过跨域限制什么的,灵活性很高。
devzhaoyou
216 天前
主要最近使用 nextjs 发现有时候会有些错误,在 react 情况下没问题,在 nextjs 环境就会报错,解决起来比较麻烦,react 官网又推荐了 nextjs 所以问下
IvanLi127
216 天前
SSR 能加快首屏渲染,所以成本允许的情况下,能上就上。
binaryify
216 天前
工具类没必要
wu67
216 天前
个人看法,不需要被搜索引擎收录的情况,能 spa 就 spa

ssr 首屏渲染是快,但是后续的平均每页面加载速度比不上 spa ,更别说如果你的网站用户是企业用户,他们工作电脑配置决定的响应速度会完全抹消 ssr 对比 spa 的首屏加载速度
zhangshine
216 天前
SSR 对 SEO 比较友好
jsq2627
216 天前
这就是 nextjs 广受诟病的地方:强推 SSR / RSC ,为了卖自家 Vercel 的商业服务。
对于很多类型的项目,比如你提到的工具类网站,以及后台管理系统,SSR/RSC 属于最不重要的优化,但会因此让开发和部署变复杂很多(如果不使用 Vercel 的话)。
RRRSSS
216 天前
nextjs 也可以使用 CSR 啊
devzhaoyou
216 天前
@RRRSSS 是可以用,加了 'use client' 有些代码也还是会报错,还需要适配,不能拿来直接用。。。
ChefIsAwesome
216 天前
看得到,摸不着,十年前业内就讨论过的问题。你是几百毫秒就能把按钮显示出来,但是 js 没加载运行之前,这个按钮点不了,用户更沮丧,用户体验更糟糕。
好的用户体验不是快,是顺。这个行业里的人就是搞不明白这个道理。所以网页前端大多数都在做不需要用户体验的后台管理系统。
lstz
216 天前
可以参考 laftools.cn 我们选型用了 Next.js ,就是希望页面直出,给用户客户端少些 js 执行的负担


但缺点也很明显,next.js 这个技术实现底层太过复杂,你很难完全弄懂,vercel 夜时不时有一些 bug

假如你怕折腾,我建议 spa 就可以了,毕竟这年代机器配置都没那么差了
RRRSSS
216 天前
@devzhaoyou 我还在用 page router ,感觉没有十分必要使用 app router ,等大家坑都踩差不多了,我再用。
ljyst
216 天前
搜索引擎优化当年可了不得
chengxiao
216 天前
我实在不理解前端技术为什么会为了某个云厂商去学一个框架......
另外 SSR 这东西都是后端 MVC 玩烂玩剩下的东西,前端这怎么又捡起来玩了,喝着叫了这么多年前端渲染,最后又回到 mvc+jquery 了
dj721xHiAvbL11n0
215 天前
@devzhaoyou #4
1. 为什么官网推荐 NextJs ,因为 NextJS 用的 React ,而且 NextJs 知名度和流行度很高,后面还有个好爹
2. 为什么 React 没问题,但是同样用 NextJs 有问题,那你一定还没有真正了解什么的服务端渲染,就是代码在服务器上跑,服务器上没有浏览器 Api 的,例如 Window 等,所以你用了肯定报错。那是不是就不能用,那肯定不是,你需要将这段代码申明在客户端渲染,或者申明这个页面在服务端渲染
jianchang512
215 天前
早古时代的 jsp 、php:就这?
lisxour
215 天前
1. 个人项目,毫无必要
2. 公司项目,上级没发话也别去搞

总结:狗都不用
devzhaoyou
215 天前
之前折腾过 wordpress ,貌似 wp 就是 php + html + js 完成了 SSR ,nextjs 貌似就是做这个。
目前看来先用最简单的方式把功能实现跑起来吧,如果有需要再迁移到 nextjs 上

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

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

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

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

© 2021 V2EX