32 lines
774 B
Markdown
32 lines
774 B
Markdown
|
# .cadoles-slide-title[Les services (1/)]
|
||
|
|
||
|
- Instanciés à la volée
|
||
|
- En mode "singleton" _(une seule instance pour l'ensemble de l'application)_
|
||
|
|
||
|
**Injection de dépendances**
|
||
|
```js
|
||
|
// Différentes notations
|
||
|
|
||
|
var MyApp = angular.module('MyApp', []);
|
||
|
|
||
|
// La plus classique, via passage de tableau déclarant les dépendances
|
||
|
// et fonction anonyme en dernier élément
|
||
|
|
||
|
MyApp.controller('FirstCtrl', ['$scope', function($scope) {
|
||
|
$scope.myProp = 'foo';
|
||
|
}]);
|
||
|
|
||
|
// --------------------------
|
||
|
|
||
|
// Via propriété $inject
|
||
|
|
||
|
function SecondCtrl($scope) {
|
||
|
$scope.myProp = 'foo';
|
||
|
}
|
||
|
// Déclaration des dépendances via la propriété $inject sur le constructeur
|
||
|
SecondCtrl.$inject = ['$scope'];
|
||
|
|
||
|
// Enregistrement du contrôleur
|
||
|
MyApp.controller('SecondCtrl', SecondCtrl);
|
||
|
```
|