id

在model.attributes中,需要用户自行定义,可不定义,获取方法:model.get('id')

cid

collection中每个model都有的属性,由backbone自动生成,获取方法:model.cid

idAttribute

在model中,用于指定使用model.attributes中哪个键作为id,默认情况下是model.attributes.id,需要用户自行定义,可不定义,获取方法:model.idAttribute

当使用set进行智能判断操作时,只有idAttribute指定的键相同的情况会把该操作视为change

DEMO

                 var TodoCollection = new Backbone.Collection();

                 TodoCollection.add([

                     {id:1,title: 'go to a', completed:true},

                     {title: 'go to b', completed:false},

                     {title: 'go to c', completed:false},

                 ]);

                 TodoCollection.on('add', function(model){

                     console.log('add:' + model.get('title'));

                 });

                 TodoCollection.on('remove', function(model){

                     console.log('remove:' + model.get('title'));

                 });

                 TodoCollection.on('change', function(model){

                     console.log('change:' + model.get('title'));

                 });

                 TodoCollection.set([

                     {id:1,title: 'go to a', completed:false},

                     {title: 'go to b', completed:false},

                     {title: 'go to c', completed:false},

                 ]);

该代码的执行结果是

 change:go to a
remove:go to b
remove:go to c
add:go to b
add:go to c

Backbone的id的更多相关文章

  1. (三)backbone - API学习 - v0.9.2 与 v1.1.2区别

    Backbone.View v0.9.2 中Backbone.View 可以导出对象的options属性, v1.1.2 中去掉该属性,通过如下代码 viewOptions = ['model', ' ...

  2. attribute和property兼容性分析

    上一篇文章中,详细的分析了他们的区别,请看Javascript中的attribute和property分析 这次,来详细的看下他们的兼容性,这些内容主要来自于对于jQuery(1.9.x)源代码的分析 ...

  3. Backbone源码解析(六):观察者模式应用

    卤煮在大概一年前写过backbone的源码分析,里面讲的是对一些backbone框架的方法的讲解.这几天重新看了几遍backbone的源码,才发现之前对于它的理解不够深入,只关注了它的一些部分的细节和 ...

  4. MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录

    注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...

  5. 使用backbone的history管理SPA应用的url

    本文介绍如何使用backbone的history模块实现SPA应用里面的URL管理.SPA应用的核心在于使用无刷新的方式更改url,从而引发页面内容的改变.从实现上来看,url的管理和页面内容的管理是 ...

  6. Backbone中的model和collection在做save或者create操作时, 如何选择用POST还是PUT方法 ?

    Model和Collection和后台的WEB server进行数据同步非常方便, 都只需要在实行里面添加一url就可以了,backbone会在model进行save或者collection进行cre ...

  7. Backbone.js 中的Model被Destroy后,不能触发success的一个原因

    下面这段代码中, 当调用destroy时,backbone会通过model中的url,向服务端发起一个HTTP DELETE请求, 以删除后台数据库中的user数据. 成功后,会回调触发绑定到dest ...

  8. Backbone.js应用基础

    前言: Backbone.js是一款JavaScript MVC应用框架,强制依赖于一个实用型js库underscore.js,非强制依赖于jquery:其主要组件有模型,视图,集合,路由:与后台的交 ...

  9. backbone入门示例

    最近因为有个项目需要用backbone+mui  所以最近入坑backbone. Backbonejs有几个重要的概念,先介绍一下:Model,Collection,View,Router.其中Mod ...

随机推荐

  1. 简单DOS命令实现局域网Windows远程关机

    1秒内重启局域网内计算机名为ppgsvr-pc的用户电脑shutdown -r -m \\ComputerName -t 1 1秒内关闭局域网内ppgsvr用户电脑shutdown -s -m \\C ...

  2. web api 2 学习笔记 (Odata ODataQueryOptions 使用)

    [ODataRoutePrefix("products")] public class ProductController : BaseController { [ODataRou ...

  3. CSS之Position详解

    CSS的很多其他属性大多容易理解,比如字体,文本,背景等.有些CSS书籍也会对这些简单的属性进行大张旗鼓的介绍,而偏偏忽略了对一些难缠的属性讲解,有避重就轻的嫌疑.CSS中主要难以理解的属性包括盒型结 ...

  4. 2个Web上传组件

    http://www.uploadify.com/download/ http://gmupload.tanjun.com.cn/

  5. poj2063 Investment(多次完全背包)

    http://poj.org/problem?id=2063 多次完全背包~ #include <stdio.h> #include <string.h> #define MA ...

  6. linux c 之signal 和sigaction区别

    http://blog.csdn.net/muge0913/article/details/7331129 要对一个信号进行处理,就需要给出此信号发生时系统所调用的处理函数.可以对一个特定的信号(除去 ...

  7. 寻访上海西服定制店_Enjoy·雅趣频道_财新网

    寻访上海西服定制店_Enjoy·雅趣频道_财新网 寻访上海西服定制店

  8. 实现函数 isInteger(x) 来判断 x 是否是整数

    将x转换为十进制整数,判断是否和自身相等即可: function isInteger(x){ return parseInt(x, 10) === x; } console.log('1.2 is a ...

  9. Web服务的体系架构

    Web简介: Web是WWW(World Wide Web)的简称,又称为万维网,是建立在客户机/服务器上的,以HTML语言和HTML协议为基础,提供面向Internet服务的,有一致用户界面的一种信 ...

  10. Ftp实现文件同步

    通常在做服务器与服务器文件.服务器与本地文件同步时通过Ftp服务实现,下面就以服务器文件和本地同步为例,介绍一下Ftp同步文件:首先建立一个Ftp站点服务,基本身份验证登陆,端口号为默认的21:Ftp ...