Dojo, 從0.43 向1.0 遷移(一)

公司的項目4月份開始,我們選擇了dojo,不爲別的,因爲他有IBM的支持。當然,我個人認爲EXT也是不錯的。


其實開源的類庫和框架我們公司用的還是很謹慎的,這次能夠用上dojo我已經心滿意足了。可惜,還是被開源給擺了一道,當我們開發了一大半頁面的時候,dojo 1.0 發佈了,而且改變很大,我們面臨一個選擇,繼續用0.43還是升級到1.0,公司決定先進行一個評估,這個任務就落在我的頭上了。

[b]評估[/b]
站在個人的立場上,我當然是希望能夠升級到1.0,但是設計到進度和時間的安排,這個評估是必不可少的。

通過分析,我發現dojo控件的 Package 和 dojoType 命名全部都變了,但是這個很容易處理,用全局替換(global replace)就可以處理。麻煩一點的就是一些控件的屬性也有變化,慶幸的是這些變化很小。另一方面,就是使用到的dojo函數和變量了,dojo的函數很多,不過因爲我們對dojo的研究還不是很深入,所以並沒有大量的採用,用的多一點的也就是那麼幾個,dojo.byId, dojo.widget.byId, dojo.addOnload。最麻煩的就是曾經使用過一個dojo的scriptScope變量_container_, 這個變量在dojo1.0裏面沒有合適的代替者,通過_container_可以獲得js當前的scriptScope,比如contentPane,這樣的話,類似_container_.addOnLoad(...)的代碼必須改成dojo.widget.byId(widgetId).addOnLoad(...),widgetId在每個頁面都是不同的,有一部分頁面可能是動態的,同樣的,這樣的地方不多。

綜上,這樣的升級還是能夠接受的,可以找一個稍微初級一點的程序員也能夠搞定。
發佈了11 篇原創文章 · 獲贊 0 · 訪問量 1973
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章