V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
codehz
V2EX  ›  分享创造

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

  •  
  •   codehz ·
    CodeHz · 2017-06-29 22:23:43 +08:00 · 2638 次点击
    这是一个创建于 2738 天前的主题,其中的信息可能已经有所发展或是发生改变。

    📦Box.js

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

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

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

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

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

    TodoMVC demo

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

    1 条回复    2017-06-30 08:20:48 +08:00
    oukichi
        1
    oukichi  
       2017-06-30 08:20:48 +08:00
    我去年也写过。写完了以后深刻感觉前端框架最不好做的地方在于如何设计框架。最好是设计的让别人拿着你的代码随便就能把你的框架扩展一发。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2484 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 04:44 · PVG 12:44 · LAX 20:44 · JFK 23:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.