Backbone 学习笔记三 extend

extend   

Backbone.Model.extend(properties,[classProperties])

创建自己的模型类,可以扩展Backbone.Model并提供实例属性,以及可选的可以直接注册到构造函数的类属性

 

extend用于设置正确的原型链,可以深度扩展

var Note = Backbone.Model.extend({

  initialize:function(){ ... },      //构造函数

     author:function(){},

  coordinates:function(){},

  allowedToEdit:function(account) {

    return true;

  }

});

var PrivateNote = Note.extend({

  allowedToEdit:function(account){

    return account.onws(this);

  }

})

 

Javascript 没有直接提供调用父类的方式,如果你要重载原型链中上层定义的同名函数,并且你想调用 父对象的实现,这时需要明确的调用 它

var CSSercom = Backbone.Model.extend({

  set: function(attributes,options) {

    Backbone.Model.prototype.set.call(this,attributes,options);

  }

})

 

constructor/initialize    构造函数,   

当创建模型实例时,可以传入属性初始值,这些值会被set到模型。如果定义了initialize   函数时,会在模型创建后招行

new Site({

  title:"Csser,关注Web后端技术",

  author:"一回"

});

 

get方法

model.get(attribute)

从模型取出当前值

csser.get(attribute);

 

set  model.set(attributes,[options])

向模型设置一个或多个模型属性。如果任何一个属性改变了模型的状态,在不传入{slient:true} 选项参数的情况下,会触发change 事件。      可以绑定这个事件到某个属性,

csser.set({title:"Csser",content:"http://www.csser.com"});

如果模型有validate方法,那么属性验证会在set之前执行,如果验证失败,模型不会发生变化。这时set会返回false...     也在以在选项中传入error回调,,,,    不触发error事件

 

escape   model.escape(attribute)

与get 类似,但返回模型属性值的html转义后的版本。如果将数据从模型插入html,使用escape取数据可以避免XSS攻击

 

转载于:https://www.cnblogs.com/yushunwu/archive/2011/12/19/2293138.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值