本文轉載於 SegmentFault 社區

作者:我可能神經病啊


公司的一個項目的迭代,在前期研究中,考慮開發及生產環境的一些情況和要求,大佬們選擇了 Mithril 這個框架,前端方面由我負責。在這之前我是沒聽說過 Mithril 的,就花了點時間去學習,發現關於這個框架的內容還是比較少的。這篇文章也是簡單整理了一下一些基礎的內容,算是學習筆記。


一、Mithril 介紹


1. 是什麼


mithril 是一個小巧的、mvc 模式的、用於構建單頁面應用的現代化 JavaScript 框架。
最新版本(2.0.4)支持 IE11 以上的瀏覽器,v1 版本支持 IE9 以上。

2. 與其他框架的對比


首先,從框架的體積大小來說, Mithril 與其他框架相比都要小的多。這裏貼一個 Mithril 官網的對比圖:
現代化 JavaScript 框架 Mithril 的簡單介紹及用法

對比現在流行的三大框架, Mithril 與 React 比較類似,兩者都是由虛擬 DOM 通過 diff 算法渲染視圖的,不過不一樣的是 React 只是單純的視圖庫,在實際項目中需要依賴其他第三方庫,而 Mithril 雖然麻雀雖小,但是五臟俱全,它內置了例如路由功能和 XHR 工具,語法上,Mithril 也支持 JSX 的寫法。
至於 Mithril 和 Angular 以及 Vue 之間,差不多可以類比 React 與這兩者之間的區別。

3. 特點


• 輕量級
壓縮後體積小,無依賴
api 少,上手簡單

• 快速
提供了一個模板引擎與一個虛擬的 DOM diff 實現,實現高性能渲染
自動重繪
• mvc
層次化的 mvc 組件,耦合性低可維護性高


二、用法示例


1. 安裝


CDN

    hide ="https://unpkg.com/mithril/mithril.js">






















來源鏈接:mp.weixin.qq.com