構建基于Javascript的移動web CMS入門
看到項目上的移動框架,網上尋找了一下,發現原來這些一開始都有。于是,找了個示例開始構建一個移動平臺的CMS——墨頎 CMS,方便項目深入理解的同時,也可以自己維護一個CMS系統。
構建框架
嘗試過用AngularJS和EmberJS,發現對于使用AngluarJS以及EmberJS來說,主要的問題是要使用自己熟悉的東西沒那么容易引入。而且考慮到谷歌向來對自己的項目的支持不是很好~~,所以便放棄了AngluarJS的想法。
于是開始尋找一些方案,但是***還是選擇了一個比較通用的方案。
- RequireJS
- jQuery
- Underscore
- Backbone
相對于AngularJS來說,Backbone是一個輕量級的方案,從大小上來說。對于自己來說,靈活性算是其中好的一點,也就是自己可以隨意的加入很多東西。
關于Backbone
Backbone.js是一套JavaScript框架與RESTful JSON的應用程式接口。也是一套大致上符合MVC架構的編程范型。Backbone.js以輕量為特色,只需依賴一套Javascript 函式庫即可運行。
具體功能上應該是
- Backbone 輕量級,支持jquery,自帶路由,對象化視圖,強大的sync機制減少頁面大小從而加快頁面顯示。
- jQuery jQuery使用戶能更方便地處理HTML(標準通用標記語言下的一個應用)、events、實現動畫效果,并且方便地為網站提供AJAX交互。不過主要是jQuery能夠使用戶的html頁面保持代碼和html內容分離,只需定義id即可。
- Underscore是Backbone的依賴庫 Underscore 是一個JavaScript實用庫,提供了類似Prototype.js的一些功能,但是沒有繼承任何JavaScript內置對象。
- RequireJS 你可以順序讀取僅需要相關依賴模塊。
前臺UI,使用的是Pure CSS,一個輕量級的CSS框架,但是***感覺,總體用到一起,大小還是相當的。只是可以有一個更好的移動體驗。
其他可替換的框架
AngularJS,考慮到某些因素,可能會替換掉Backbone,但是還不是當前可行的方案。為了學習是一方案,也為了更好的普及某些東西。
handlebars Handlebars 是Mustache的改進,顯示與邏輯分離,語法兼容Mustache,可以編譯成代碼,改進Mustache對路徑的支持,但是若需要在服務端運行需要使用服務端Javascript引擎如Node.js。
項目
前后端分離設計,后臺對前臺只提供JSON數據,所以在某種意義上來說可能會只適合瀏覽,和這個要配合后臺的框架。總的來說,適合于閱讀類的網站。
源碼
代碼依然是放在Github上,基本功能已經可以Works了。
https://github.com/gmszone/moqi.mobi
進展及目的
***目標:構建一個移動平臺的CMS系統。
當前:對于這樣一個項目來說,目前會考慮優先支持下面的兩個框架,
- Django+Tastypie API
- Wordpress
現在:可以從后臺讀取到數據。
其他
一些比較好的資料有