BackboneJs入门学习[03]—Model实践(1)

本文详细介绍 Backbone.js 中 Model 的核心概念与应用实践,包括属性赋值、自定义方法及属性变化监听等实用技巧。

⭐️ 本文首发自 前端修罗场(点击即可加入),一个专注 Web 技术、答疑解惑、面试辅导、职业发展的社区。现在加入,即可参与打卡挑战,挑战成功即可获取一次免费的模拟面试机会,进而评估知识点的掌握程度,获得更全面的学习指导意见!

唉,最近公司在研发分布式高性能的云计算平台,其中涉及到了 AI 方面的处理。所以我也在自学 Python,发现没啥门槛😂。不过在 AI 方面的知识却是需要花功夫花时间学习的。在学习的过程中我发现了一个不错的学习教程,推荐给大伙😋,我个人觉得这个教程讲解的通俗易懂,帮我省去了自己苦苦专研的时间,能够得到快速的进步。下一阶段,我也会在这里和大家分享我的学习笔记。

BackboneJs入门学习之模块—Model实践(1)

上一篇中,我们简单了解了Backbone中Model这个模块。这一篇中,将具体介绍Model中的一些操作。


用一张图来回顾backbone中各个模块的关联:
这里写图片描述

Ok,切入本篇正题。

  1. Model中对象属性的赋值方法

在Model中对属性的赋值可以使用两种方法:

1.方式一: 使用直接定义的方式赋值——设置默认值(defaults)

示例:

var Man=Backbone.Model.extend({
    initialize:function(){
       alert('Hello world.');
},
   //设置默认值
   defaults:{
     name:'张三',
     age:'38'
  }
});
//实例化
var man=new Man;
alert(man.get('name'));//使用get获取属性值


1.方式二:赋值时定义——set()
示例:

var Man=Backbone.Model.extend({
      initialize:function(){
              alert('Hello world');
  }
});
var man=new Man;
//使用set方法对man添加属性和属性值,这类似{key:value}的方式
man.set({name:'张三',age:'10'});
alert(man.get('name'));

怎么样?是不是很轻松!
这里写图片描述

2. 对象的方法


既然对象有属性,那就得要有方法了。

其实,在所有的定义或是赋值中,都是通过字典的方式来完成的,如extend
Backbone中德Model,以及定义方法和定义属性。所以,对方法的定义很类似。
示例:

  var Man=new Backbone.Model.extend({
      initialize:function(){
             alert('Hello world');

},
 defaults:{
    name:'张三',
    age:'10'
},
//定义方法
aboutMe:function(){
   return '我叫'+this.get('name')+',今年'+this.get('age')+'岁';
}
});
var man=new Man;
alert(man.aboutMe());//调用方法

3.监听对象中属性的变化——change

以上介绍了对象的属性和方法,那么当属性变化时该如何做出相应呢?Backbone中使用change事件进行监听

change事件:当属性发生变化时,就会被触发;

示例:

var Man=Backbone.model.extend({
      initialize:function(){
      alert('Hello world');
 //初始化时绑定监听
 this.bind('change:name',function(){
   var name=this.get("name");
   alert("你改变了name属性,值为:"+name);

});
},
defaults:{
     name:'张三'age:'38'
},
aboutMe:function(){
  return '我叫'+this.get('name')+'今年'+this.get('age')+'岁';
}
});
var man=new Man;
man.set({name:'李四'});//将张三改为李四,于是触发change事件,弹出提示信息

这就相当于js中的onchange()事件。


每篇一语

当你发现你喜欢做一件事情时,就应该持续的做下去!

加油!!!

❤️ 现在关注【前端修罗场】,后台回复【666】,即可获取一份【免费的优质学习资料】,一起学习,一起进步,不走弯路,不吃亏~

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蟹蟹蟹风流

期望和你分享一杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值