手上有个网站,大约只有 5 个页面(某些页面,传入不同 id 返回不同结果,由于模板一致(网页结构),算作一个页面)
想要实现:
1、首屏速度在 1 秒内:
这个已经实现,服务端吐纯 html,然后放在 cdn 上,速度已经是毫秒级别
用户信息,在客户端发送 ajax 请求单独获取(虽然多了一个请求,但整体速度更快)
2、用 react 来提升页面之间的跳转速度(前后分离,页面跳转只请求必要数据,而不是请求整个页面)
这个有点麻烦,目前的服务端已经写好了 restful 接口
我的打算是这样的:
先用 react 实现网站的所有功能
然后在浏览器里复制渲染好的 html 结构,让服务端用这个 html 结构来渲染出网站内容,当用户首次请求,就吐这个内容
当用户再次访问其他页面的时候,就用 react 来控制
这样就实现了,不但首次加载超级快,而且 用户跳转其他页面,还可以享受 react 带来的速度
但是仔细思考,我就发现了一个问题:
当用户首次 获得网站内容后,x 秒后,react 运行了,重新渲染了页面, 用户就会看到网页 闪烁了一下
那怎么办呢?
有没有办法 解决这个问题呢?
虽然我知道可以用服务端渲染, 但是服务端渲染 成本有点高,要准备一台新机器
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.