美文网首页
Mithril简介

Mithril简介

作者: 失控疯男 | 来源:发表于2017-08-05 10:56 被阅读0次

mithril首先是一款前端轻量级的mvvm框架(类似react),轻量到什么程度,大小只有8kb,这是我用过的最小的前端框架。麻雀虽小,但五脏俱全,这8kb竟然也包含了路由,懒加载,预加载功能。然后我们再来仔细介绍这款框架。
1.虚拟dom节点
虚拟DOM树是描述DOM树的Javascript数据结构。它由嵌套的虚拟DOM节点组成,也称为vnodes。通常,虚拟DOM树在每个渲染循环中重新生成,通常是响应于事件处理程序或数据更改而发生的。虚拟节点树针对其以前的版本,仅修改在有分支的变化DOM元素。如此频繁地重新创建vnode似乎是浪费的,但事实证明,现代Javascript引擎可以在不到一毫秒的时间内创建数十万个对象。另一方面,修改DOM比创建vnode要贵几个数量级。
2.组件(component)
组件是封装视图的部分以使代码更易于组织和/或重用的机制,react中也有。组件有六个生命周期方法:oninit,oncreate,onupdate,onbeforeremove,onremove,onbeforeupdate,这也很像angular和react中的component lifecycle。其实框架也是相互借鉴,最近看大漠老师在和vue撕逼,在下看来完全没有必要,你说vue抄袭angular,angular难道不是借鉴其他的技术吗?框架好用就行,mithril能把这么多功能放到8kb的空间里,足矣。
3.auto redraw
这个概念有点类似单向数据绑定,Mithril实现了一个虚拟的DOM分散系统,用于快速呈现,此外,它还提供了各种机制来获得对应用程序渲染的细粒度控制。当以惯用方式使用时,Mithril采用自动重画系统,可在数据层中进行更改时同步DOM。当然你也可以通过设置为特定事件禁用自动重绘
4.路由
layout布局

var Layout = {
    view: function(vnode) {
        return m(".layout", vnode.children)
    }
}
m.route(document.body, "/", {
    "/": {
        view: function() {
            return m(Layout, m(Home))
        },
    },
    "/form": {
        view: function() {
            return m(Layout, m(Form))
        },
    }
})

万物皆component

附官方网址:https://mithril.js.org/

相关文章

  • Mithril简介

    mithril首先是一款前端轻量级的mvvm框架(类似react),轻量到什么程度,大小只有8kb,这是我用过的最...

  • mithril.js

    mithril.js是什么 Mithril is a modern client-side Javascript ...

  • VSCode插件推荐(前端)

    1.Mithril Emmet(代码快速编写工具) Emmet前身是zen-coding A.快速编写HTML代码...

  • MithrilJS 点点滴滴

    针对 MithrilJS, 记录一些自己的想法。可能会不断添加。 Mithril 的 m.request() A...

  • 是时候使用 Mithril.js 了

    Mithril.js 是一个客户端的 JavaScript MVC 框架。 随着 Flarum 也使用了 Mith...

  • 获得大众采用:区块链平台将用户的名声转化为咖啡和衣服

    Mithril是一个在社交网络上奖励内容创作者的分散平台,他告诉Cointelegraph,他们正致力于将其MIT...

  • MithrilJS 界面重绘

    Mithril 没有数据与界面的双向绑定,用的是一种看起来比较笨的方式:一旦某些条件满足,立即重绘整个界面。 组件...

  • 18旅游二班各组自我简介汇总

    一组简介 二组简介 三组简介 四组简介 五组简介 六组简介 七组简介 八组简介

  • 简介

    上辈子,洛幽喜欢了东凡一辈子,没有结果,之后她死了,她不后悔,只是为什么她一睁眼,嗯?捏了捏自己的脸,她这是回到了...

  • 简介

    1.主动地去阅读。 2.阅读目的:获得资讯,获得理解 前者为了增进资讯,获得信息,不能增加理解力。后者为了理解更多...

网友评论

      本文标题:Mithril简介

      本文链接:https://www.haomeiwen.com/subject/lfsilxtx.html