Backbone.js 使用 Collection】的更多相关文章

在前面我们的 Backbone.js 用上了 Model, 但绝大数的情况下我们处理的都是一批的 Model 数据列表,所以需要有一个 Collection 来容纳 Model, 就像 Java 里最常用的 List. 声明 Collection 时需要指定他处理的 Model 类型,也就是个泛型参数,如我们这样定义 Collection: //define Collection var PeopleCollection = Backbone.Collection.extend({ model:…
这段时间在学习Require.js和Backbone.js的过程中,发现有些项目里的HTML代码都是写在View的js代码里面的,渲染的时候需要对Collection进行循环,再将HTML代码拼接上去,这似乎不是一件非常好的事情,因为将js代码和html代码融合到一起会增加代码的维护难度,而且这个过程中考虑到性能的因素,需要将HTML代码放到一个数组中,最后进行拼接,代码写起来比较麻烦.我看到他们的代码之后就在考虑是否有一种类似php模板引擎的东西可以将Collection传递进去然后渲染. 我…
写了近半个月的backbone.js代码,从一开始的todo到现在做仿微信的网页聊天,其中最大的困惑就在于如何处理比较复杂的Model,其内嵌了一个或者多个Collections. 假设我们有一个Person的Model,一个Person会有多个工作,那么我们将jobs这个属性设置为一个Collection: 初始化代码如下: var Job = Backbone.Model.extend({ }); var Jobs = Backbone.Collection.extend({ model:J…
Backbone.js Overview 它由Jeremy Ashkenas开发,最初发行于2010-10-13 它是一个轻量的JavaScript类库,只依赖于underscore.js,非强制依赖于jquery,大小只有7.6Kb,作为一个框架级的js文件,它已经非常小了 它提供了Model-View-Presenter(MVP)的框架模式,可以帮助前端开发搭建一个层次清晰的Web应用框架 它提供了models和collections来封装数据结构,提供了views来操作DOM,提供了自定义…
注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是将 M 和 V 的实现代码分离,从而使同一个程序可以使用不同的表现形式. 交互方式(所有通信都是单向的): View 传送指令到 Controller Controller 完成业务逻辑后,要求 Model 改变状态 Model 将新的数据发送到 View,用户得到反馈 更详细的说明: 模型(Mod…
前言: Backbone.js是一款JavaScript MVC应用框架,强制依赖于一个实用型js库underscore.js,非强制依赖于jquery:其主要组件有模型,视图,集合,路由:与后台的交互主要是通过Restful JSON 进行数据传输: 基础Backbone.js知识: 1.引入js文件:如果依赖于第三方类库如jquery,则最好先引入:之后引入underscore.js 这是必须引入且在引入backbone.js之前,其引入文档结构如下: <head> <meta ch…
backbone.js已经不是当前最流行的前端框架了,但是对于我而言,依然具有比较好的学习价值.虽然目前来说,react,vue等mvvm框架非常火热,但是感觉自身还不到去使用这种框架的层次.这些技术虽好,但是对个人的挑战也是比较大:首先是在编程基础这个部分,包括数据结构,算法,面向对象编程,设计模式,设计原则等等,我觉得在这些方面积累地还不够:其次是工作方法层面,对比angualr,react以及vue,跟传统的用原生js或者jquery写的代码,包括html,css和js三个方面,你会发现这…
Backbone.js为复杂WEB应用程序提供模型(models).集合(collections).视图(views)的结构.其中模型用于绑定键值数据和自定义事件:集合附有可枚举函数的丰富API: 视图可以声明事件处理函数,并通过RESRful JSON接口连接到应用程序. [介绍] 当我们开发含有大量Javascript的web应用程序时,首先你需要做的事情之一便是停止向DOM对象附加数据. 通过复杂多变的jQuery选择符和回调函数很容易创建Javascript应用程序,包括在HTML UI…
原文: Build a Contacts Manager Using Backbone.js: Part 5 这是这系列教程最后一部分了. 之前所有的增删改都在前端完成. 这部分我们要把Contact的数据存储到数据库里. 开始准备 在这里我们需要一个Web服务器,还有一个数据库. 可以是SQLServer.我们需要在 数据库中创建一个表来存储Concat. 表还要有一个主键ID,最好这个ID是unique和 自增长类型的. 虽然现在我们的Concat model里没有这个属性但是要把它存储到数…
原文: Build a Contacts Manager Using Backbone.js: Part 3 欢迎回到这系列的教程,关注使用Backbone.js构建应用程序. 如果你还没看过第一,二部分推荐你先看第一二部分~~~~ 剩下内容我简单翻译重要部分, 相同类似太多废话了就不说了. 添加model到collection 要添加单独的一个model到collection中. 首先我们要提供一个填写model信息的表.请把下面的html添加到ID为contacts的div中. <form…