squiroid squiroid - 5 months ago 64
AngularJS Question

Multiple ng-repeat on single element

Is this possible to achieve a code like this:-

<tr ng-repeat="data in dataArray,value in valueArray">
{{data}} {{value}}
</tr>


I am having two arrays I want to show them in single row.

PS: I am not asking for syntax. I am looking for logic to achieve this

Thanks

Like :- "http://jsfiddle.net/6ob5bkcx/1/"

Answer

You should be doing this in the controller, not in the view. Map the dataValues into a key/value pair object and reference the values array using an index. This assumes that each data key has a corresponding value key.

Controller:

var dataArray = [];
var valueArray = [];
this.repeatData = dataArray.map(function(value, index) {
    return {
        data: value,
        value: valueArray[index]
    }
});

View:

<tr ng-repeat="data in repeatData">
    {{data.data}} {{data.value}}
</tr>