Bonjour,

Je débute sur angularjs et j'aimerai bien que vous me corrigez un petit code :
j'essaie de passer des données à un contrôleur via un service pour pouvoir l'afficher dans la vue mais mon code ne marche pas.

Voici le script js :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var app=angular.module("app",[]);
app.factory('IndexSrv',function(){
var factory={
	cardslist : 
	[	
		{ 'name' : 'Skylasher' },
		{ 'name' : 'Thrashing Mossdog' },
		{ 'name' : 'Zhur-Taa Druid' },
		{ 'name' : 'Feral Animist' },
		{ 'name' : 'Rubblebelt Maaka' },
		{ 'name' : 'Mending Touch' },
		{ 'name' : 'Weapon Surge' },
		{ 'name' : 'Woodlot Crawler' },
		{ 'name' : 'Phytoburst' },
		{ 'name' : 'Smelt-Ward Gatekeepers' },
		{ 'name' : 'Debt to the Deathless' },
		{ 'name' : 'Woodlot Crawler' },
		{ 'name' : 'Blaze Commando' },
		{ 'name' : 'Uncovered Clues' }
	],
	getCard : function(){
		return factory.cardslist;
	}
}
return factory;
});
 
app.controller('indexCtr',['$scope',function($scope,IndexSrv){
// mock des cartes dans lesquelles rechercher
	$scope.cardslist = IndexSrv.getCard();
 
	// saisie du nom de la carte
	$scope.card = null;
}]);

Et voici la vue :

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<html ng-app="app">
<head>
	<script type="text/javascript" src="js/angular.min.js"></script>
	<script type="text/javascript" src="js/scripts.js"></script>
	<title></title>
</head>
<body ng-controller="indexCtr">
<div ng-repeat="nom in cardslist">
{{nom.name}}
</div>
</body>
</html>

Un grand merci