核心还是采用 Bigpipe + Nunjucks 模板编译实现的。模板 tpl 和 data 编译,生成 html,这个部分其实 Biglet 的 render 方法里做的。然后在请求写入的生命周期上,将 html 分块写入浏览器。
优酷前端团队在之前 PC 首页/频道页面改造的基础上,将 React 服务端渲染沉淀出了一 个技术框架,该项目已经在 Github 开源,截止 2020 年 1 月底已有 657 star,具体使用方式和 源码请查看 egg-react-ssr 项目地址(https://github.com/ykfe/egg-react-ssr) 第一版:Bigpipe + JQuery 1. 原理: 核心还是采用 Bigpipe + Nunjucks 模板编译实现的。模板 tpl 和 data 编译,生成 html,这个 部分其实 Biglet 的 render 方法里做的。然后在请求写入的生命周期上,将 html 分块写入浏览器。 1)采用 Bigpipe 有 2 大核心优势: 兼容 IE6 等低版本浏览器,不得不用。现代 Web 框架只支持主流浏览器。之前开发对 JQuery 都比较熟悉,二者结合是当时最完美的选择; 业务属性决定的,新老接口拼凑(PHP 的,Java 的,HTTP 的),采用 Bigpipe,利用 Node.js 并发,将接口请求从前端转移到服务端,即可以保证业务快速迭代,也可以保证页面性能; 将页面进一步抽象,以前理解是每个模块都 Biglet。但实际使用中,进行分级处理会更好。 首先渲染布局; 核心:渲染首屏,对于播放页重点是播放器和剧集内容; 其他:看不到的可以偷偷加载,及时不展示也没问题;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。