zoukankan      html  css  js  c++  java
  • Backbone入门教程

    Backbone笔记

    入职新的公司,公司前端使用Backbone进行开发。这里记录下Backbone使用教程及技巧。Backbone框架是个成熟又小巧的前端MVC库。

    Backbone.View(视图)

    • reander:默认实现是没有操作的
    
    //html代码
        <div id="search_container"></div>
        	<script type="text/template" id="search_template">
            	<div>
                <%= search_label %>
            </div>
        </script>
    //js代码
    	 var SearchView = Backbone.View.extend({
                    initialize: function () {},
                    render: function (context) {
                        console.log($(this.el))
                            //使用underscore这个库,来编译模板
                        var template = _.template($("#search_template").html());
                        //加载模板到对应的el属性中
                        $(this.el).html(template(context));
                    }
                });
                var searchView = new SearchView({
                    el: $("#search_container")
                });
    
                //这个reander的方法可以放到view的构造函数中
                //这样初始化时就会自动渲染
                searchView.render({
                    search_label: "搜索渲染111"
                });
    

    Backbone.Collection(集合)

    • add:向集合中添加一个模型
    • where:返回集合中所有匹配所传递 attributes(属性)的模型数组
    • fetch():用于从服务器接口获取集合的初始化数据,覆盖或追加到集合列表中
    • create():在集合中创建一个新的模型,并将其同步到服务器
    
    var appModel = Backbone.Model.extend({
        initialize: function(){ 
            //alert(this.get("test"));
        },
        defaults:{ //缺省值
            test: '1111'
        }
    })
    
    //new appModel;
    
    var appCollection = Backbone.Collection.extend({
        modle: appModel //指定模型
    })
    
    var appModel1 = new appModel({test: '2222'})
    var appModel2 = new appModel({test: '333333'})
    var appModel3 = new appModel({test: '44444'})
    
    //添加到集合中
    var book = new appCollection([appModel1,appModel2,appModel3]) 
    
    //each取数据
    book.each(function(book){
        console.log(book.get('test'))
    })
    
  • 相关阅读:
    python制作一个塔防射箭游戏
    有两个链表a和b,设结点中包含学号、姓名。从a链表中删去与b链表中有相同 学号的那些结点。
    python实现一个简单的21点游戏
    C语音,函数padd的功能是调整pa指向的链表中结点的位置,使得所有x值为偶数的结点出现在链表的前半部,所有x值为奇数的结点出现在链表的后半部。
    scratch绘制特殊图形1
    验证哥德巴赫猜想,输出6-100之间的偶数等于两个质数之和
    写一函数check检测字符串中的左右括号数是否匹配
    C语言文件操作题,将整数1-10及其算术平方根存入文件,再读取出来显示在屏幕上
    湖南2020对口计算机32题第1、2、3小题
    基础
  • 原文地址:https://www.cnblogs.com/Baiang/p/5290835.html
Copyright © 2011-2022 走看看