Turbolinks5 是 Turbolinks-classic 的改进版。@Rei 在 13 年做过一些原理分析,现在是时间更新一波 Turbolinks5 的原理解析了。
在踩过一遍坑之后,我总结了一些经验。
必须用起来,既然是 Rails5
应用,强烈推荐使用 Turbolinks5
来构建你的应用。在用好它的前提下,它的用户体验速度赶超用 AngularJS
, ReactJS
, VueJS
构建的单页应用 ( 在详细页里面有解释 ).
而学习成本实际上很低,一个团队只要一个人掌握即可。而且我希望通过我的文章你就能完全掌握好它。
核心原理没有变化,但代码全部重构的更为清晰,触发的事件也进行了重构,更明白了:
但如果你未能掌握好它,仍然有一些易踩的坑,我们来看一个 RubyChina 现场版的 ( 2016-8-7 21:36 测试有效 ):
看到了什么?两个活跃图表
为什么会出现这种情况,我们应当如何避免类似问题,欢迎继续阅读 Turbolinks5 概述及实现原理
如果你想进一步学习我是如何分析源代码的话,可以花 1 元钱来购买一篇源代码分析: Turbolinks5 源码分析