个人不准备处理任何除开启了实验性网络架构后的最新版 Chrome 以外浏览器的兼容性的问题,打算就用在 electron 的项目里了。。。。反正只是玩具。。当然有人觉得好玩并且想在别的浏览器玩的话,倒是可以发 PR。。。
大体上就是用一个 js 对象作为模板,然后生成 dom 元素。
基本设计思想就是上下文继承,顶层元素声明了一些上下文变量后,子元素就可以直接访问和修改,同时修改操作会广播一个更新通知,继而可以更新视图数据,解耦了数据的更新和视图的变化。同时对于列表渲染提供了一小部分优化。
有一点点虚拟 DOM 的意思在里面,不过简化了很多,比较算法也是使用最慢的 O(n^2)算法。。
下面是一个惯例:TodoMVC (样式来源于 todomvc.com )
需要 Chrome 最新版同时开启实验性网络架构
1
oukichi 2017-06-30 08:20:48 +08:00
我去年也写过。写完了以后深刻感觉前端框架最不好做的地方在于如何设计框架。最好是设计的让别人拿着你的代码随便就能把你的框架扩展一发。
|