Hello World Angular JS - Service
HTML
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
<script src="http://searls.github.io/jasmine-all/jasmine-all-min.js"></script>
<script src="http://code.angularjs.org/1.0.6/angular-mocks.js"></script>
<div ng-app="helloWorldApp">
<div ng-controller="HelloWorldCtrl">
<button ng-click="embaralhar()">Embaralhar</button>
<p>Lista</p>
<ul>
<li ng-repeat="item in array">{{item.id}}: {{item.nome}}</li>
</ul>
Total de Cidades: {{array.length}}
</div>
</div>
CSS
.ng-invalid {
border: 1px solid red;
}
ul {list-style-type: square;}
JavaScript
var helloWorldApp = angular.module('helloWorldApp', []);
helloWorldApp.controller('HelloWorldCtrl', function ($scope, randomSortService, $window) {
$scope.nome = "mundo";
$scope.numero = 123;
$scope.digaOla = function () {
$window.alert("Olá " + $scope.nome + "!");
}
$scope.array = [{
id: 1,
nome: "SALVADOR"
},{
id: 2,
nome: "RIO DE JANEIRO"
},{
id: 3,
nome: "FLORIANOPOLIS"
},{
id: 4,
nome: "SÃO PAULO"
},{
id: 5,
nome: "RECIFE"
},{
id: 6,
nome: "NATAL"
}];
$scope.embaralhar = function () {
randomSortService.sort($scope.array);
};
});
helloWorldApp.service('randomSortService', function ($rootScope) {
this.sort = function (array) {
for (var i = array.length - 1; i > 0; i--) {
var j = Math.floor(Math.random() * (i + 1));
var temp = array[i];
array[i] = array[j];
array[j] = temp;
}
return array;
};
});