backbone template большой обьем данных

189
27 июля 2017, 00:03

Не могу понять как с помошью backbone и шаблонизатора от underscore вывести массив данных . вывод 1 ного набора понятен . а вот массив что то я не поиму .

Как вывести Newdefaults ?

var testModel  = Backbone.Model.extend({ 
    defaults:{ 
        name:'иван', 
        age:40, 
        job:'слесарь' 
    }, 
    Newdefaults:{ 
        1:{ name:'Иван',age:40,job:'слесарь'}, 
        2:{ name:'Иван2',age:23,job:'слесарь'}, 
        3:{ name:'Иван3',age:21,job:'слесарь'}, 
        4:{ name:'Иван3',age:32,job:'слесарь'}, 
        5:{ name:'Иван4',age:40,job:'слесарь'}, 
        6:{ name:'Иван5',age:34,job:'слесарь'}, 
        7:{ name:'Иван6',age:26,job:'слесарь'}, 
        8:{ name:'Иван7',age:21,job:'слесарь'}, 
        9:{ name:'Иван8',age:22,job:'слесарь'}, 
        10:{ name:'Иван9',age:22,job:'слесарь'}, 
        11:{ name:'Иван12',age:26,job:'слесарь'} 
 
    } 
}); 
 
var testView = Backbone.View.extend({ 
    tagName:"div", 
    id:'testBlock', 
    events:{ 
        'click #search_bot':"serachBottom" 
    }, 
    template: _.template('<strong><%= name %></strong> ( <%= age %> ) - <%= job %>'), 
    initialize:function(){ 
        this.render(); 
    }, 
    render:function(){ 
        //this.$el.html(this.template(this.model.attributes)); 
        //return this; 
        this.$el.html(this.template(this.model.toJSON())); 
        //$('#testBlock').html(view.el); 
    }, 
    serachBottom:function(){ 
        console.log('work it'); 
    } 
}); 
var model = new testModel(); 
var  view = new testView({ model:model }); 
$('#testBlock').html(view.el);

Answer 1

Вы можете воспользоватся самым обыкновенным циклом for -

const Newdefaults = { 
      1:{ name:'Иван',age:40,job:'слесарь'}, 
      2:{ name:'Иван2',age:23,job:'слесарь'}, 
      3:{ name:'Иван3',age:21,job:'слесарь'}, 
      4:{ name:'Иван3',age:32,job:'слесарь'}, 
      5:{ name:'Иван4',age:40,job:'слесарь'}, 
      6:{ name:'Иван5',age:34,job:'слесарь'}, 
      7:{ name:'Иван6',age:26,job:'слесарь'}, 
      8:{ name:'Иван7',age:21,job:'слесарь'}, 
      9:{ name:'Иван8',age:22,job:'слесарь'}, 
      10:{ name:'Иван9',age:22,job:'слесарь'}, 
      11:{ name:'Иван12',age:26,job:'слесарь'} 
} 
 
document.body.innerHTML = _.template(` 
<% for(var def of Newdefaults) { %>  
  <strong><%= def.name %></strong> ( <%= def.age %> ) - <%= def.job %> </br> 
<% } %> 
`)({Newdefaults: Object.values(Newdefaults)});
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>

READ ALSO
Как переместить курсор мыши в конец текста

Как переместить курсор мыши в конец текста

Как переместить курсор мыши в конец текста в тестах с enzyme,

221
Не работают одновременно два js скрипта

Не работают одновременно два js скрипта

ЗдравствуйтеПодключаю в одном файле spritespin

280
как внедрить содержимое в первый Таб

как внедрить содержимое в первый Таб

Как засунуть контент в первый таб Видео ? и при нажатии на таб MATTRESSES контент первого таба исчезал и выводился контент второго таба ?

203
Разрезка изображения на ровные части

Разрезка изображения на ровные части

ЗдравствуйтеНужно сделать функцию для разрезки изображения на ровные части(6 шт)

188