当前位置: 首页 > news >正文

201507221403_《backbone之一——新建模型和集合、实例化模型、模型上监听事件的方法、模型设置和获取后台数据、配置理由方法、视图绑定事件的方法、绑定模型等》...

一 . 新建

 

var model_1 = new Backbone.Model({'name':'hello'});

var model_2 = new Backbone.Model({'name':'hi'});

var models = new Backbone.Collection();

models.add( model_1 );

models.add( model_2 );

alert( JSON.stringify(models) );

 

二. 实例化模型

var M = Backbone.Model.extend({
    aaa : function(){
        alert(123);
    }
});

var ChildM = M.extend();

var model = new ChildM;
model.aaa();

 

三. 模型上监听事件的方法

$(function(){

    var M = Backbone.Model.extend({
        defaults : {
            name : 'hello'
        }
    });
    
    var V = Backbone.View.extend({
            
        initialize : function(){
            
            this.listenTo( this.model , 'change' , this.show );
            
        },
        show : function(model){
            $('body').append( '<div>'+ model.get('name') +'</div>' );
        }
        
    });
    
    
    var m = new M;
    var v = new V({model:m});
    m.set('name','hi');

});

 

四. 模型设置和获取后台数据

Backbone.sync = function(method, model) {
      alert(method + ": " + JSON.stringify(model));
};

var C = Backbone.Collection.extend({
    initialize : function(){
        this.on('reset',function(){
            alert(123);
        });
    }, 
    url: '/users'
});

var models = new C;
models.fetch();

 

五. 配置理由方法

var Workspace = Backbone.Router.extend({

    routes: {
        "help":                 "help",    // #help
        "search/:query":        "search",  // #search/kiwis
        "search/:query/p:page": "search"   // #search/kiwis/p7
    },
    
    help: function() {
        alert(1);
    },
    
    search: function(query, page) {
        alert(2);
    }

});

var w = new Workspace;
Backbone.history.start();

 

六. 视图绑定事件的方法

$(function(){
    
    var V = Backbone.View.extend({
        
        el : $('body'),
        events : {
            'click input' : 'aaa',
            'mouseover li' : 'bbb'
        },
        aaa : function(){
            alert(123);
        },
        bbb : function(){
            alert(456);
        }
        
    });
    
    var veiw = new V;
    
});

 

七. 绑定模型

$(function(){

    var M = Backbone.Model.extend({
        defaults : {
            name : 'hello'
        }
    });
    
    var V = Backbone.View.extend({
            
        initialize : function(){
            
            this.listenTo( this.model , 'change' , this.show );
            
        },
        show : function(model){
            $('body').append( this.template(this.model.toJSON()) );
        },
        template: _.template($('#template').html())
        
    });
    
    
    var m = new M;
    var v = new V({model:m});
    m.set('name','hi');

});

 

八. 

 

转载于:https://www.cnblogs.com/beesky520/p/4667332.html

相关文章:

  • Android HAL实例解析
  • 15款优秀移动APP产品原型设计工具
  • ThreadPoolExecutor运转机制详解
  • 图片垂直居中在中间
  • MeeGo handset 1.1开发环境[5]:一个desktop小应用
  • Java虚拟机学习 - 对象访问
  • 20款Notepad++插件下载和介绍
  • ios协议
  • UIComponent的生命周期(life cycle)
  • spring(一)IOC AOP
  • 深入分析Flex [Bindable] 以及使用方法
  • indy10 学习2
  • 一个网页设计需求方眼中的网页设计
  • 正则表达式入门以及记录
  • 谈谈网页设计师的成长之路
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • Android单元测试 - 几个重要问题
  • ECMAScript入门(七)--Module语法
  • extjs4学习之配置
  • iOS小技巧之UIImagePickerController实现头像选择
  • MQ框架的比较
  • PaddlePaddle-GitHub的正确打开姿势
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • 程序员该如何有效的找工作?
  • 仿天猫超市收藏抛物线动画工具库
  • 机器学习 vs. 深度学习
  • 讲清楚之javascript作用域
  • 猫头鹰的深夜翻译:JDK9 NotNullOrElse方法
  • 如何学习JavaEE,项目又该如何做?
  • 应用生命周期终极 DevOps 工具包
  • 追踪解析 FutureTask 源码
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • $.ajax()方法详解
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (四)库存超卖案例实战——优化redis分布式锁
  • (四)模仿学习-完成后台管理页面查询
  • (转)scrum常见工具列表
  • (转)Sql Server 保留几位小数的两种做法
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • ./configure,make,make install的作用(转)
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET Core 项目指定SDK版本
  • .net core开源商城系统源码,支持可视化布局小程序
  • .NET Micro Framework 4.2 beta 源码探析
  • .net MySql
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .NET框架
  • //解决validator验证插件多个name相同只验证第一的问题
  • @Pointcut 使用
  • @Service注解让spring找到你的Service bean
  • [ C++ ] template 模板进阶 (特化,分离编译)