<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 36, comments - 30, trackbacks - 0, articles - 3

    Backbone學習筆記二

    Posted on 2016-04-02 12:06 笑看人生 閱讀(851) 評論(0)  編輯  收藏
    @import url(http://m.tkk7.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 在學習筆記一中,一個視圖渲染一個Sudent對象,如果存在多個Student對象怎么辦,
    在java中可以通過ArrayList來保存,比如List<Student> students = new ArrayList<>();
    在Backbone中,也有類似于ArrayList的實現,只需要新建一個類,繼承Collection就可以了,實現代碼如下:
    成員變量model指定集合中存放對象的類型,類似于java中范型。

    1     var StudentCollection = Backbone.Collection.extend({
    2         model: Student
    3     });

    對學習筆記一種代碼稍加修改,修改代碼如下:
    新建三個Student對象,把這三個對象加入studentCollection對象中。

     1         var student1 = new Student({
     2             id: 10000,
     3             name: '王小二',
     4             age: 30
     5         });
     6         
     7         var student2 = new Student({
     8             id: 20000,
     9             name: '姚敏',
    10             age: 26
    11         });
    12         
    13         var student3 = new Student({
    14             id: 30000,
    15             name: '科比',
    16             age: 24
    17         });
    18         
    19         var studentCollection = new StudentCollection([
    20             student1,
    21             student2,
    22             student3
    23         ]);

    至此集合模型已經新建完畢,那么如何通過視圖來顯示這個集合模型。

    學習筆記一中新建的StudentView類的render方法做修改,同時在構建這個類對象時,稍作修改,修改如下:
    把原來綁定model的代碼改成綁定collection。

    1 var studentCollectionView = new StudnetCollectionView ({
    2             collection: studentCollection
    3  });

     1     var StudnetCollectionView = Backbone.View.extend({
     2         
     3         el: 'body',
     4         
     5         render:function(){
     6             var html = '';
     7             _.each(this.collection.models,function(model,index,obj){
     8                 var tmp = '學號: ' + model.get('id') + '.' +
     9                           '姓名: ' + model.get('name') + '.' +
    10                           '年齡: ' + model.get('age');
    11                 
    12                 html = html + '<li>' + tmp + '</li>'; 
    13             });
    14             
    15             html = '<ul>' + html + '</ul>';
    16             $(this.el).html(html);
    17         }
    18     });

    完整的main.js內容如下:
     1 (function($){
     2     $(document).ready(function(){
     3         
     4         var student1 = new Student({
     5             id: 10000,
     6             name: '王小二',
     7             age: 30
     8         });
     9         
    10         var student2 = new Student({
    11             id: 20000,
    12             name: '姚敏',
    13             age: 26
    14         });
    15         
    16         var student3 = new Student({
    17             id: 30000,
    18             name: '科比',
    19             age: 24
    20         });
    21         
    22         var studentCollection = new StudentCollection([
    23             student1,
    24             student2,
    25             student3
    26         ]);
    27         
    28         var studentCollectionView = new StudnetCollectionView({
    29             collection: studentCollection
    30         });
    31 
    32         studentCollectionView.render();
    33         
    34     });
    35     
    36     //set model
    37     var Student = Backbone.Model.extend({
    38         //set default values.
    39         defaults: {
    40             id: 0,
    41             name: '',
    42             age: 0
    43         }
    44     });
    45     
    46     var StudentCollection = Backbone.Collection.extend({
    47         model: Student
    48     });
    49     
    50     //set view
    51     var StudnetCollectionView = Backbone.View.extend({
    52         
    53         el: 'body',
    54         
    55         render:function(){
    56             var html = "<table border='1'><tr><th>學號</th><th>姓名</th><th>年齡</th></tr>";
    57             _.each(this.collection.models, function(model,index,obj){
    58                 var tmp = '<tr><td>' + model.get('id') + '</td>' +
    59                           '<td>' + model.get('name') + '</td>' +
    60                           '<td> ' + model.get('age') + '</td></tr>';
    61                           
    62                           
    63                 html = html = html + tmp;
    64             });
    65             
    66             html = html + '</table>';
    67             $(this.el).html(html);
    68         }
    69     });
    70     
    71 })(jQuery);
    72 



    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲专区先锋影音| 国产偷国产偷亚洲高清日韩| 亚洲AV无码专区亚洲AV伊甸园| 日韩一区二区三区免费体验| 亚洲婷婷天堂在线综合| 97av免费视频| 久久精品国产亚洲av影院| 久热免费在线视频| 韩国18福利视频免费观看| 日韩亚洲国产综合高清| 午夜老司机免费视频| 国产亚洲人成在线影院| 亚洲精品视频免费| 亚洲人成高清在线播放| 97碰公开在线观看免费视频| 亚洲国产精品久久丫| 好男人看视频免费2019中文 | 四虎最新永久免费视频| 亚洲成AV人综合在线观看| 最近最好的中文字幕2019免费| 国产成人99久久亚洲综合精品| 特级毛片在线大全免费播放| 亚洲熟妇av一区二区三区漫画| 亚洲JIZZJIZZ妇女| 亚洲欧洲国产成人综合在线观看| 中文字幕视频免费在线观看| 亚洲精品中文字幕无码蜜桃| 亚洲免费在线观看视频| 亚洲久热无码av中文字幕| 亚洲精品tv久久久久| 日韩精品久久久久久免费| 亚洲午夜福利在线视频| 亚洲黄黄黄网站在线观看| 99re热精品视频国产免费| 亚洲精品国产首次亮相 | 亚洲精品狼友在线播放| 波多野结衣免费在线| 免费国产a理论片| 亚洲视频在线免费看| 国产禁女女网站免费看| 免费在线看黄网站|