2017-08-26 2 views
0

J'ai mes messages enregistrés dans un fichier .json. Mes goûts pour chaque message sont enregistrés dans un autre fichier php qui est connecté à ma base de données.AngularJS fusionner des tableaux pour ng-repeat

a.likesA = []; 

$http({ 
    method: 'GET', 
    url: 'data/get_likes.php' 
}).then(function(response) { 
    a.likesA = response.data; 
    console.log(response.data); 
}, function(error) { 
    console.log("Likes konnten nicht geladen werden: " + error.status + error.statusText); 
}); 


a.labs = []; //declare an empty array 

$http({ 
    method: 'GET', 
    url: 'data/lab.json' 
}).then(function(response) { 
    a.labs = response.data; 
    //console.log(response.data.length); 
}, function(error) { 
    console.log("JSON konnte nicht geladen werden: " + error.status + error.statusText); 
}); 

Je souhaite afficher chaque publication avec le nombre correspondant.

i essayé ceci: ng-repeat="lab in combined = labs.concat(likesA) que je me fasse 6 ng-répétitions au lieu de 3. (i actuellement 3 messages dans mon .json)

+1

Est-ce que vous créer violon afin que nous puissions vous aider à mieux –

Répondre

0

pourquoi vous ne pouvez pas faire comme ça. Où vous utilisez la propriété $index des laboratoires pour obtenir le nombre respectif de mentions J'aime.

// <body ng-app='myApp' binds to the app being created below. 
 
var app = angular.module('myApp', []); 
 

 
// Register MyController object to this app 
 
app.controller('MyController', ['$scope', MyController]);  
 

 
// We define a simple controller constructor. 
 
function MyController($scope) { 
 
    $scope.likes=[5,4,3,2,1]; 
 
    $scope.labs = ['5', '4', '3', '2', '1']; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-controller='MyController' ng-app='myApp'> 
 
    <div ng-repeat="lab in labs"> 
 
     <div>Lab Index: {{lab}}</div> 
 
     <div>Number of likes:{{likes[$index]}}</div> 
 
     <br> 
 
     <br> 
 
    </div> 
 
</div>

0

Essayez comme ça, Object.assign fusionneront tableau ou objets

var combined = Object.assign([], labs, likesA); 

ng-repeat="lab in combined"