Faites attention à la partie rouge. Si vous n'injectez pas de dépendances en spécifiant explicitement des paramètres, ces noms de variables peuvent être remplacés lorsque vous minifycodez, provoquant l'échec de l'injection d'exécution
Ces deux sont des méthodes d'injection de dépendances. Il existe trois méthodes d'injection dans ng : a. Injection inférentielle app.controller('MyCtrl', function($scope) { } );
b. Injection annotée var myFunc=function($scope) { }); myFunc.$inject = ['$scope']; app.controller('MyCtrl ' ,myFunc);
c, injection en ligne app.controller('MyCtrl', ['$scope', function($scope) { }]);
La première méthode est basée sur le nom du paramètre écrit, tel que $scope, et appelle en interne $inject pour injecter $scope dans l'injection de dépendances. Si un outil de compression est utilisé dans le développement front-end, $scope sera remplacé par. une autre lettre. Il est impossible de faire des déductions. Dans les deux autres manières, vous pouvez changer function($scope) en function(a). La deuxième méthode nécessite d'écrire une ligne de code supplémentaire. Il est généralement recommandé d'utiliser la troisième voie.
http://www.html-js.com/article/2956
Lisez d'abord la documentation
Faites attention à la partie rouge. Si vous n'injectez pas de dépendances en spécifiant explicitement des paramètres, ces noms de variables peuvent être remplacés lorsque vous
minify
codez, provoquant l'échec de l'injection d'exécutionCes deux sont des méthodes d'injection de dépendances.
Il existe trois méthodes d'injection dans ng :
a. Injection inférentielle
app.controller('MyCtrl', function($scope) {
} );
b. Injection annotée
var myFunc=function($scope) {
});
myFunc.$inject = ['$scope'];
app.controller('MyCtrl ' ,myFunc);
c, injection en ligne
app.controller('MyCtrl', ['$scope', function($scope) {
}]);
La première méthode est basée sur le nom du paramètre écrit, tel que $scope, et appelle en interne $inject pour injecter $scope dans l'injection de dépendances. Si un outil de compression est utilisé dans le développement front-end, $scope sera remplacé par. une autre lettre. Il est impossible de faire des déductions. Dans les deux autres manières, vous pouvez changer function($scope) en function(a).
La deuxième méthode nécessite d'écrire une ligne de code supplémentaire.
Il est généralement recommandé d'utiliser la troisième voie.