avalonjs適用場(chǎng)景

avalon的優(yōu)點(diǎn)是顯而易見(jiàn)的:

avalon是一個(gè)優(yōu)秀的前端框架

avalon的思想非常超前,當(dāng)然,從另一方面講,沒(méi)有什么東西是新的,但是avalon的推出時(shí)間要早于angularjs,在MVVM的框架里是比較早的。在使用MVVM框架后最大的感受就是,如果業(yè)務(wù)邏輯不是非常復(fù)雜,整個(gè)的前端開(kāi)發(fā)與后端交互這一塊基本就剩下了命名變量和賦值,工作輕松了許多。

幾乎沒(méi)有不能應(yīng)付的情況

avalon經(jīng)過(guò)了去哪兒前端業(yè)務(wù)的考驗(yàn),作者的考慮比較全面,幾乎沒(méi)有不能應(yīng)付業(yè)務(wù)需要的情況,尤其是class的命名如ms-class-1={{blue}}就是考慮到了多個(gè)vm變量控制class賦值的情況,非常實(shí)用,再比如$index的使用,在任何時(shí)間輕松獲取索引,非常方便。

兼容性好

推出的IE版和mobile版本能很好的適配IE低版本瀏覽器和移動(dòng)端。

avalon也有許多缺點(diǎn):

官網(wǎng)混亂 文檔不統(tǒng)一

雖然使用avalon很長(zhǎng)時(shí)間,但是avalon的不同版本都是散落在司徒(author)的博客,去哪兒的UED團(tuán)隊(duì)博客上和github上,及其混亂,新的一版出來(lái),沒(méi)有一個(gè)統(tǒng)一的地方通知,是偶爾才知道的。如果avalon的文檔能管理的有秩序一些,會(huì)有更多人知道這個(gè)框架。

沒(méi)有配套的腳手架

ant.design是阿里的前端團(tuán)隊(duì)推出的基于React的組件,配套了相應(yīng)的開(kāi)發(fā)工具,能方便的開(kāi)發(fā),測(cè)試和集成。Vue也有相應(yīng)的構(gòu)建工具,而avalon還是停留在小米加步槍的時(shí)代。

對(duì)組件的支持太弱

首先是組件的開(kāi)發(fā)方式非常晦澀,不容易看懂,其次官方提供的組件開(kāi)發(fā)很多時(shí)候竟然是單例模式的,同一個(gè)組件在一個(gè)頁(yè)面中引用兩次(比如日期組件)會(huì)引起沖突。

對(duì)路由的支持差

配套的路由是可用的,但與別的框架比起來(lái),使用的時(shí)候會(huì)有很多坑,比如沒(méi)有區(qū)分用戶(hù)點(diǎn)擊請(qǐng)求和ajax請(qǐng)求,用戶(hù)點(diǎn)擊返回的時(shí)候會(huì)造成路由污染。

由于avalon的自身容量較小,再加上以上的分析,avalon最適合做頁(yè)面的模板工具,用自定義的符號(hào)(一般是{{}})做占位符,avalon可以很輕松的填充數(shù)據(jù),交互也非常不錯(cuò)。在這樣的場(chǎng)景下,建議模板輸出的時(shí)候就在head標(biāo)簽里定義數(shù)據(jù),可以省去ajax請(qǐng)求:

<head>
  <script>
    var _data = JSON.parse("<?php echo json_encode($data); ?>");
  </script>
</head>
/**
* html code
**/
 <script>
  var vm = avalon.define({
    $id:"id",
    array:_data
  });
</script>

另外,就是要求兼容低版本瀏覽器的需求可以考慮avalon。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,381評(píng)論 25 708
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,951評(píng)論 19 139
  • 心里賬戶(hù) 引導(dǎo)消費(fèi)者由可選心理賬戶(hù)轉(zhuǎn)移到必備心理賬戶(hù)中,可以使客戶(hù)樂(lè)于付 沉沒(méi)成本 有目的的制造消費(fèi)者的沉沒(méi)成本可...
    Hesson閱讀 243評(píng)論 0 1
  • 記得我第一首學(xué)會(huì)唱的歌就是SHE的《波斯貓》,很活潑俏皮的歌,后來(lái)收到兩盒別人送的SHE專(zhuān)輯的磁帶,才慢慢認(rèn)識(shí)這三...
    瑪格麗特不想念閱讀 531評(píng)論 0 1
  • 今天是2017年1月11日(星期三),天氣陰天但末下雨可以下海,早自助餐后,乘汽車(chē)給我們每人發(fā)了一條浴巾,首先我們...
    肖永立閱讀 148評(píng)論 0 0