avalon1.3.8主要是在ms-repeat、 ms-each、 ms-with等循環綁定上做重大性能優化,其次是對一些綁定了事件的指令添加了roolback,讓其CG回收更順暢。
- 重構ms-repeat、ms-each、ms-with, 內部的代理對象全部使用普通的對象實現, 並且一個監控數組只對應一個代理VM數組,從而大量減少VM的數量。
- avalon不再使用scanCallback實現內部各種rendred回調,改成checkScan方法。詳看這里的例子。
- fix parseHTML在舊式IE下動態生成tr元素,多添加了caption元素的BUG
- getEachProxy方法在ms-repeat, ms-duplex混合使用時,清空數組,某一部分元素無法同步的BUG
- fix IE6-9下addClass沒有對類名進行trim操作的BUG
- fix 短路與,短路或引發的收集依賴失敗的BUG
- 重構scanAttr, fix ms-repeat與ms-css, ms-data共存而漏掃的問題
- avalon.modern.js去掉HTML Imports的實現,收拾大寫變小寫引發的BUG
- fix date filter BUG
- fix 內部onTree BUG,可能會引起死循環,詳見這里
- fix html filter,詳見 這里
- 優化 CG回收 ms-if ms-hover ms-active 都加上rollback方便移除綁定
- onTree在觸發里面的事件時,針對change blur事件需要對document.activeElement進行檢測
- 修正ms-class中的占位符的生成方式
- 修正avalon.fn.data取某些對象屬性時被序列化的BUG
- 修正IE6-8下ms-css-float BUG
- 優化 計算屬性,它再也不用收集視圖刷新函數與更新視圖了
- ms-repeat、 ms-each、 ms-with現在完全按照供銷渠道那一套來寫了, 所有代理VM的產生、消費、回收,存放通過xxxProxyFactory、xxxProxyAgent、 recycleProxies、xxxProxyPool實現。詳見這里
此外,avalon已經使用新官網,原《入門教程》也使用新風格重寫,大家有必要重看一下 《入門教程》。
迷你MVVM框架在github的倉庫https://github.com/RubyLouvre/avalon
avalon的新UI庫地址OniUI, 多達42個UI,強大的換膚功能
朋友們用avalon做的東西
- 移動應用:讀酷
- chrome插件:飯否客戶端
- 為知筆記
- 金山WPS office 會員中心
- 稻売兒
- 桑夏資產官網
- 企業級應用:超博CRM客戶關系管理系統(帳號:crm_ceo 密碼:nncb_ceo)
- uliweb Python框架與avalon的組合示例
- avalon+jQuery實現域名注冊查詢
- 路由器示例
- 邊鋒活動頁
- 記者考試題
- 基於avalonJS實現的2048游戲
- 墨麒OA (user: linwei, password: 654321)
最近,已經有三個百度部門(百度移動,百度商業,百度推廣)在用avalon了,你們也快快加入吧!