刚撸了一个很简单的前端框架(玩具级别的)

2017-06-29 22:23:43 +08:00
 codehz

📦Box.js

个人不准备处理任何除开启了实验性网络架构后的最新版 Chrome 以外浏览器的兼容性的问题,打算就用在 electron 的项目里了。。。。反正只是玩具。。当然有人觉得好玩并且想在别的浏览器玩的话,倒是可以发 PR。。。

大体上就是用一个 js 对象作为模板,然后生成 dom 元素。

基本设计思想就是上下文继承,顶层元素声明了一些上下文变量后,子元素就可以直接访问和修改,同时修改操作会广播一个更新通知,继而可以更新视图数据,解耦了数据的更新和视图的变化。同时对于列表渲染提供了一小部分优化。

有一点点虚拟 DOM 的意思在里面,不过简化了很多,比较算法也是使用最慢的 O(n^2)算法。。

下面是一个惯例:TodoMVC (样式来源于 todomvc.com

需要 Chrome 最新版同时开启实验性网络架构

2558 次点击
所在节点    分享创造
1 条回复
oukichi
2017-06-30 08:20:48 +08:00
我去年也写过。写完了以后深刻感觉前端框架最不好做的地方在于如何设计框架。最好是设计的让别人拿着你的代码随便就能把你的框架扩展一发。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/372038

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX