最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue,angular,avalon這三種MVVM框架優(yōu)缺點

 更新時間:2016年04月27日 09:37:04   投稿:hebedich  
本文給大家具體分析了下vue,angular,avalon這三種MVVM框架優(yōu)缺點,十分的細(xì)致全面,有需要的小伙伴可以參考下

本文的主要內(nèi)容是參考官方文檔說明總結(jié)而來:

Vue.js

Vue.js @尤雨溪 老師寫的一個用于創(chuàng)建 web 交互界面的庫,是一個精簡的 MVVM。從技術(shù)角度講,Vue.js 專注于 MVVM 模型的 ViewModel 層。它通過雙向數(shù)據(jù)綁定把 View 層和 Model 層連接了起來。實際的 DOM 封裝和輸出格式都被抽象為了Directives 和 Filters。Vue.js和其他庫相比是一個小而美的庫,作者的主要目的是通過一個盡量簡單的 API 產(chǎn)生可反映的數(shù)據(jù)綁定和可組合的視圖組件,感覺作者的思路非常清晰。

優(yōu)點:

簡單:官方文檔很清晰,比 Angular 簡單易學(xué)。
快速:異步批處理方式更新 DOM。
組合:用解耦的、可復(fù)用的組件組合你的應(yīng)用程序。
緊湊:~18kb min+gzip,且無依賴。
強(qiáng)大:表達(dá)式 & 無需聲明依賴的可推導(dǎo)屬性 (computed properties)。
對模塊友好:可以通過 NPM、Bower 或 Duo 安裝,不強(qiáng)迫你所有的代碼都遵循 Angular 的各種規(guī)定,使用場景更加靈活。

缺點:

新生兒:Vue.js是一個新的項目,2014年3月20日發(fā)布的0.10.0 Release Candidate版本,目前github上面最新的是0.11.4版本,沒有angular那么成熟。
影響度不是很大:google了一下,有關(guān)于Vue.js多樣性或者說豐富性少于其他一些有名的庫。
不支持IE8:哈哈不過AngularJS 1.3也拋棄了對IE8的支持,但是 @司徒正美 老師的avalon是支持IE6+的,應(yīng)該下了很多努力去優(yōu)化。這一點對于那些需要支持IE8的項目就不好了,不過這也是web前端開發(fā)的一個趨勢,像IE低版本就應(yīng)該退出歷史舞臺了,通過改變我們的前端思維,而不是順應(yīng)那些使用老版本而不去升級的人。 @玉伯老師就說過一句話,我覺得說的非常好“這年頭,支持 IE6、7 早就不再是特性,而是恥辱。努力推動支付寶全面不支持 IE6、7,期待更多兄弟加盟”。

AngularJS

AngularJS最近很火,追隨者也很多。 Superheroic JavaScript MVW Framework
官方說得很樸素:“完全使用JavaScript編寫的客戶端技術(shù)。同其他歷史悠久的Web技術(shù)(HTML、CSS和JavaScript)配合使用,使Web應(yīng)用開發(fā)比以往更簡單、更快捷“。當(dāng)你學(xué)習(xí)它的時候,我相信你會被它的很多新特效所吸引。

優(yōu)點:

動態(tài)視圖:以前從來沒有想過js可以如此擴(kuò)展HTML的屬性,但是AngularJs做到了,它替我們靜態(tài)的HTML加了很多擴(kuò)展性功能,有一種讓HTML由死變活的感覺。
完善:是一個比較完善的前端MVW框架,包含模板,數(shù)據(jù)雙向綁定,路由,模塊化,服務(wù),依賴注入等所有功能,模板功能強(qiáng)大豐富,并且是聲明式的,自帶了豐富的 Angular 指令。
Google維護(hù):AngularJS有Google來維護(hù),無疑有了一個強(qiáng)大的后臺,對于推廣和維護(hù)明顯比Vue.js和avalon有優(yōu)勢,社區(qū)也非?;顫?,能夠很好促進(jìn)它的發(fā)展。
AngularJS & Ionic:Ionic: Advanced HTML5 Hybrid Mobile App Framework,這倆就是一個好基友,Ionic通過用AngularJS為了創(chuàng)建一個框架,最適合開發(fā)的豐富和強(qiáng)大的應(yīng)用程序。上次于知乎答了一個相關(guān)問題做webapp開發(fā),性能和效率最好的框架和打包app平臺分別是哪個? - 湯威的回答,詳細(xì)可以見這里。

缺點:

大而全:學(xué)習(xí)起來有難度,對于我來講學(xué)習(xí)曲線很曲折,比較難理解一些。
推翻重寫:前段時候逛社區(qū)發(fā)現(xiàn)AngularJS2.0會把之前的推翻重寫,兩個框架的改變很大,基本是兩個框架了,等于是說等到2.0出來后又需要從頭開始,不過又說回來, http://m.fzitv.net/article/79637.htm這篇文章很好說明了AngularJS2.0的變化。
不支持IE8以下,貌似2.0變得只支持移動端了,等到出來后再看吧。

Avalon.js

Avalon.js是 @司徒正美 老師所寫的個簡單易用迷你的MVVM框架,它最早發(fā)布于2012.09.15,為解決同一業(yè)務(wù)邏輯存在各種視圖呈現(xiàn)而開發(fā)出來的。常??梢钥吹嚼蠋熗茝V他的Avalon.js,出了很多教程,無疑對國內(nèi)學(xué)習(xí)Avalon.js的人提供了巨大方便。

優(yōu)點

使用簡單,在HTML中添加綁定,在JS中用avalon.define定義ViewModel,再調(diào)用avalon.scan方法,它就能動了!
兼容到 IE6 (其他MVVM框架,KnockoutJS(IE6), AngularJS(IE9), EmberJS(IE8), WinJS(IE9) ),另有avalon.mobile,它可以更高效地運(yùn)行于IE10等新版本瀏覽器中
沒有任何依賴,不到5000行,壓縮后不到50KiB
支持管道符風(fēng)格的過濾函數(shù),方便格式化輸出
局部刷新的顆粒度已細(xì)化到一個文本節(jié)點,特性節(jié)點
要操作的節(jié)點,在第一次掃描就與視圖刷新函數(shù)相綁定,并緩存起來,因此沒有選擇器出場的余地。
讓DOM操作的代碼近乎絕跡
使用類似CSS的重疊覆蓋機(jī)制,讓各個ViewModel分區(qū)交替地渲染頁面
節(jié)點移除時,智能卸載對應(yīng)的視圖刷新函數(shù),節(jié)約內(nèi)存
操作數(shù)據(jù)即操作DOM,對ViewModel的操作都會同步到View與Model去
自帶AMD模塊加載器,省得與其他加載器進(jìn)行整合。

缺點

1,對數(shù)組的過濾沒有angular那么方面,avalon的過濾器只能用于ms-text, ms-html

2,沒有英文文檔,宣傳受到限制

3,OniUI的皮膚不夠好看,許多人說要配合boostrap,但社區(qū)還沒有人主動站出來做這事

相關(guān)文章

  • 淺談vue 二級路由嵌套和二級路由高亮問題

    淺談vue 二級路由嵌套和二級路由高亮問題

    這篇文章主要介紹了淺談vue 二級路由嵌套和二級路由高亮問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Vue3 defineModel的使用示例詳解

    Vue3 defineModel的使用示例詳解

    文章介紹了vue中向子組件傳值并允許修改的機(jī)制,通過defineModel實現(xiàn)雙向綁定,它返回一個ref,并且可以配置底層prop的選項,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • vue運(yùn)行卡死的問題

    vue運(yùn)行卡死的問題

    這篇文章主要介紹了vue運(yùn)行卡死的問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vuex中Getter的用法詳解

    vuex中Getter的用法詳解

    這篇文章主要給大家介紹了關(guān)于Vuex中Getter的基本使用教程,getter相當(dāng)于Vuex中的計算屬性 對 state 做處理再返回,本文通過示例代碼將Getter介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • 詳解Vue項目中出現(xiàn)Loading chunk {n} failed問題的解決方法

    詳解Vue項目中出現(xiàn)Loading chunk {n} failed問題的解決方法

    這篇文章主要介紹了詳解Vue項目中出現(xiàn)Loading chunk {n} failed問題的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • vue中g(shù)etters的使用與四個map方法的使用方式

    vue中g(shù)etters的使用與四個map方法的使用方式

    這篇文章主要介紹了vue中g(shù)etters的使用與四個map方法的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • vue中marker被識別點擊的過程場景分析

    vue中marker被識別點擊的過程場景分析

    這篇文章主要介紹了vue中marker被識別點擊的過程場景分析,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • vue實現(xiàn)前端按鈕組件權(quán)限管理

    vue實現(xiàn)前端按鈕組件權(quán)限管理

    這篇文章主要為大家介紹了vue實現(xiàn)前端按鈕組件權(quán)限管理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Vue PostCSS的使用介紹

    Vue PostCSS的使用介紹

    postcss一種對css編譯的工具,類似babel對js的處理,postcss只是一個工具,本身不會對css一頓操作,它通過插件實現(xiàn)功能,autoprefixer就是其一
    2023-02-02
  • Vue中的vue-resource示例詳解

    Vue中的vue-resource示例詳解

    Vue與后臺Api進(jìn)行交互通常是利用vue-resource來實現(xiàn)的,本質(zhì)上vue-resource是通過http來完成AJAX請求相應(yīng)的。這篇文章主要介紹了Vue中的vue-resource示例詳解,需要的朋友可以參考下
    2018-11-11

最新評論

富民县| 高陵县| 措勤县| 汕尾市| 古浪县| 桂林市| 济南市| 乌拉特后旗| 锡林郭勒盟| 罗城| 墨竹工卡县| 大厂| 古交市| 宾阳县| 精河县| 苏尼特右旗| 固原市| 中江县| 赤壁市| 济南市| 阿城市| 乌鲁木齐市| 镇远县| 南陵县| 福海县| 剑阁县| 长垣县| 通辽市| 合作市| 周口市| 正镶白旗| 新营市| 瑞昌市| 扎兰屯市| 开远市| 文成县| 霍邱县| 栖霞市| 马龙县| 两当县| 榆树市|