2015-12-21 4 views
0

У меня есть следующий макет массива:получить длину вложенных массивов в рулях?

var indicators = 
{ 
    items: 
    { 
     array1:[], 
     array2:[] 
    }  
}; 

и у меня есть следующий Рули код, чтобы сделать шаблон:

var source = 
    '{{#items}}' + 
     '<div class="listItem" onclick="clickListItem({{@index}});">' + 
     '<div class="leftSide">' + 
     '<div class="listTitle"> {{SOMETHING MUST GO HERE, RIGHT?}} </div>' + 
     '</div>' + 
     '</div>' + 
     '{{/items}}'; 

var template = Handlebars.compile(source); 

$('.list').html(template(indicators)); 

Как вы можете видеть здесь, - я хочу, чтобы создать список, который будет появляется на экране, что просто отображает длину каждого массива внутри индикаторов (array1 и array2). Как получить эти данные для каждого массива. Код, который у меня есть, выполняет итерацию по индикаторам.элементы, но как я могу получить длину их?

ответ

0

Вы пробовали это ?. чтобы получить данные для каждого массива внутри объекта items

{{#items}} 
    {{#array1}} 
    {{/array1}} 

    {{#array2}} 
    {{/array2}} 
{{/items}} 

вы можете попробовать это .. он получает длину массива внутри ваши детали объекта

var arrayLengths = []; 
var objects = { 
    array1: [1,2,3,4,5,12,55], 
    array2: [1,2,3,4,5,6,7,8], 
    array3: [1,2,3,4,5,3,4], 
    array4: [1,2,3,4,5,10,23], 
    array5: [1,2,3,4,5,440,120] 
}; 
for(var key in objects) { 
    var value = objects[key].length; 
    arrayLengths.push(value); 
} 
console.log(arrayLength); 
+0

Спасибо - но это не совсем то, что я нужно, что я хочу, это длина массива1 и array2, а не элементы. Вы знаете, как я могу это сделать? – MickeyThreeSheds

+0

{{array1.length}} {{array2.length}}? – vistajess

+0

Это сработало бы - но тогда мой пользовательский интерфейс был бы жестко закодирован, где мне это нужно, чтобы иметь возможность работать для N вложенных массивов внутри «элементов» - например, в приведенном выше коде у меня есть только array1 и array2, но во время выполнения , вполне правдоподобно, что я могу получить 10 или 11 массивов внутри «предметов». – MickeyThreeSheds

Смежные вопросы