随笔分类 -  MVC

Backbone模型
摘要:现在进入最关键的组件 - 模型。模型用来存储应用的所有数据,以及直接和数据操作相关的逻辑。Backbone中的模型类是Backbone.Model,它包含了数据存储,数据验证,以及数据发生变动时触发相关动作。一般可以把模型与后端绑定(ORM),模型改变的同时向后端发起请求(Ajax)更新数据(数据库)。也有把模型和DOM元素绑定,模型改变时更新HTML界面。模型可以直接new一个Backbone.Model,它返回一个Model实例var model = new Backbone.Model()model.set({name: 'Backus', age: 35})也可扩展Ba 阅读全文

posted @ 2013-08-15 09:22 snandy 阅读(6260) 评论(1) 推荐(3) 编辑

Backbone.sync-将模型同步到服务器
摘要:默认情况下,只要保存模型(Model/Collection的sync方法),Backbone就会Ajax请求把模型持久化到服务器端。有以下几点sync方法把model持久化存储到服务器端,你可以重写该方法的实现方式,它默认使用jQuery或zepto的$.ajax整个Backbone,只有Model和Collection的sync会调用Backbone.sync请求类型由第一个参数method决定,可以是create/update/patch/delete/read。它默认采用RESTful请求请求的数据由第二个参数model决定,URL默认是model的url,数据是model的attrib 阅读全文

posted @ 2013-06-06 18:40 snandy 阅读(4580) 评论(0) 推荐(1) 编辑

Backbone事件模块
摘要:事件模块Backbone.Events是Backbone的核心,Model、Collection、View都依赖它。此外,事件模块的所有方法都挂在了全局的Backbone上,如果你的代码中需要用到自定义事件(实现观察者模式),可以直接使用它。标示符Events是内部的一个引用,为讨论方便,这里也省去了前缀Backbone,这篇文章会从以下几个点分析Events APIEvents的用法Events内部数据结构 (_events/_listeners)特殊事件: “all”Events与Model、Collection、View、Router、History的关系一、Events API1.0之 阅读全文

posted @ 2013-05-28 08:13 snandy 阅读(7150) 评论(0) 推荐(2) 编辑

Backbone的写类方式
摘要:从两个角度去讨论Backbone的写类方式Backbone内部的写类方式,Backbone自身的类如Model、Collection、View等是如何定义的Backbone外部的写类方式,如何使用Backbone提供的类来定义自己的类一、Backbone内部的写类方式Backbone提供给客户端程序员的类都是通过 构造函数+原型 的方式写的,Backbone.Model的代码大致如下// 定义构造器var Model = Backbone.Model = function(attributes, options) { // ... this.set(attrs, options);... 阅读全文

posted @ 2013-05-27 08:01 snandy 阅读(4587) 评论(3) 推荐(1) 编辑

冗余换性能-从Backbone的triggerEvents说开了去
摘要:Backbone是一个优秀的前端MVC库,它的代码质量必定可靠。阅读过程中发现了函数triggerEvents有点意思,初看会以为一些代码是多余的。var triggerEvents = function(events, args) { var ev, i = -1, l = events.length, a1 = args[0], a2 = args[1], a3 = args[2]; switch (args.length) { case 0: while (++i < l) (ev = events[i]).callback.call(ev.ctx); return... 阅读全文

posted @ 2013-05-23 13:32 snandy 阅读(2770) 评论(1) 推荐(3) 编辑