Tweb2019年腾讯前端技术大会不完全总结( 二 )


换一种思路 , 直接仿造DOM的接口 , 在小程序内创建一个仿造的DOM树 , 交由小程序渲染 。这样的话,完全不用对上层的vue代码进行改造,就能完成同构 。

Tweb2019年腾讯前端技术大会不完全总结

文章插图
接下的问题是:1、如何创建仿造DOM树;2、如何将仿造的DOM树渲染到页面上;3、如何监听页面事件
尽可能按照标准来仿造Dom接口,如createElement、appendChild等 。借助小程序自定义组件的可嵌套性实现仿造的DOM树,交给小程序渲染 。由于小程序的事件系统与web端不一样,仿造了浏览器的事件系统,接管小程序的事件 。
在实现过程中,有许多的细节问题,比如性能优化、如何DOM树更新策略等,June老师都一一做了介绍 。不过,这种同构方案也有问题:由于整个适配器逻辑都是运行时逻辑,当页面复杂性增加,节点变多时,kbone的性能问题就显现出来了 。
目前,kbone已经成为了小程序官方推荐的多端同构方案 。
极致SSR:高效率构建高性能Web同构页by 段隆贤 - 腾讯web前端高级工程师
段老师首先给出了极致SSR的目标:1、更短的首次有效绘制时间;2、更短的可交互时间;3、有更好的交互体验,给用户更好的过度动画和预期 。
为了达到极致SSR的目标,首先采用了分块传输的策略,不需要等待页面所有的接口返回,页面头部接口响应即可响应页面 。在实现分块的时候,采用的是自动化分块,由模板的语法树, 分析代码的上下文 ,  分析数据和模板间的依赖 ,  用异步数据分割模板,分块逐步输出 。
然后是Vue编译优化方案,由Vue语法树,在编译时生成线性字符串的拼接, 无需构造和遍历VDOM树形性能更高 。
降低不必要的同构DOM量,采用局部同构的方案,加快可相应时间 。
段老师给我们分享了他在SSR方面的思考和实践,干货满满 。
Serverless SSR实践by 水澜 - 阿里巴巴前端技术专家
来自阿里的水澜老师,给我们带来了Rax的分享 。Rax是一套遵循React标准的跨端解决方案 。同时,Rax拥有将工程快速转变为Faas的能力,使得ssr和serverless的结合更加快捷,方便 。
Tweb2019年腾讯前端技术大会不完全总结

文章插图
Web编辑器的实现,从简单编辑到专业排版by 张祥 - 腾讯文档Word / TIM Andorid负责人
张祥老师首先介绍了如何实现一个简单的编辑器,核心的就是contenteditable这个属性 。
Tweb2019年腾讯前端技术大会不完全总结

文章插图
实现一个编辑器需要解决许多的问题,最主要的就是排版上的各种坑 。
腾讯文档的整体架构如下:
Tweb2019年腾讯前端技术大会不完全总结

文章插图
由于腾讯文档是一个多人协作的产品 , 在多人协作时也需要考虑很多的问题,最主要的就是需要实现操作的原子化 。腾讯文档采用了模块化、插件化的设计,并且有计划开放编辑器SDK , 打造一个社区 。
原文:微信处搜索 符合预期的CoyPan
我自己是一名从事了多年的前端老程序员 , 小编为大家准备了新出的前端编程学习资料,免费分享给大家!
如果你也想学习前端 , 那么帮忙转发一下然后再关注小编后私信【1】可以得到我整理的这些前端资料了(私信方法:点击我头像进我主页有个上面有个私信按钮)
感谢您的阅读 。最近都没太多时间回复大家,很抱歉,因为实在太多BUG要修了 。文章干货程度不多,但是任然坚持分享,希望大家谅解~!忙完这阵子,一定加倍分享2020年最新最全最实用的干货文章!祝大家明年开春,收获理想中的offer、致谢