Backbone 是一個前端 JS 代碼 MVC 框架,它不可取代 Jquery,不可取代現有的 template 庫。而是和這些結合起來構建複雜的 web 前端交互應用。html
Backbone 主要包括 models, collections, views 和 events, controller。前端
(一)model web
關於 backbone,最基礎的一個東西就是 model,這個東西就像是後端開發中的數據庫映射那個 model 同樣,也是數據對象的模型,而且應該是和後端的 model 有相同的屬性(僅是須要經過前端來數據庫
操做的屬性)。後端
Models 用來建立數據,校驗數據,存儲數據到服務器端.Models 還能夠綁定事件。好比用戶動做變化觸發 models 的 change 事件,全部展現此model 數據的 views 都會接收到 這個 change 事件,進行重繪。服務器
最簡單的定義以下:框架
- var Game = Backbone.Model.extend({});
稍微發雜一點post
- var Game = Backbone.Model.extend({
- initialize: function(){
- alert("Oh hey! ");
- },
- defaults: {
- name: 'Default title',
- releaseDate: 2011,
- }
- });
initialize
至關於構造方法,初始化時調用url簡單實用:code
- // Create a new game
- var portal = new Game({ name: "Portal 2", releaseDate: 2011});
- // release will hold the releaseDate value -- 2011 here
- var release = portal.get('releaseDate');
- // Changes the name attribute
- portal.set({ name: "Portal 2 by Valve"});
此時數據還都在內存中,須要執行save方法纔會提交到服務器。
portal.save();