recherche

Maison  >  Questions et réponses  >  le corps du texte

angulaire.js - Que signifie le deuxième paramètre du contrôleur AngularJS?

 var app = angular.module('app',['ngPlugin']);
    app.controller('frontTourism',['$scope','$http','stModal','$timeout','ngSubmit','alert',function(){/*省略*/}])

'$scope','$http','stModal','$timeout','ngSubmit','alert' À quoi servent-ils ?

滿天的星座滿天的星座2844 Il y a quelques jours591

répondre à tous(3)je répondrai

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-15 17:06:50

    Permettez-moi de vous expliquer en détail la signification de l'injection de dépendances.

    Il existe généralement trois façons pour un objet de prendre le contrôle de ses dépendances :
    (1) Créer des dépendances en interne
    (2) Référencer via des variables globales ;
    (3) Transmettre des paramètres ; là où c'est nécessaire.
    L'injection de dépendances d'Angular est implémentée via la troisième voie. Les deux méthodes restantes poseront divers problèmes, tels que la pollution de l'environnement mondial et la rendre extrêmement difficile à isoler.
    D'un point de vue fonctionnel, l'injection de dépendances trouvera automatiquement les dépendances à l'avance et informera la cible d'injection des ressources dépendantes, afin que les ressources puissent être injectées immédiatement lorsque la cible en a besoin.

    Angular a 3 méthodes d'injection :
    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 déduire. 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 ; 🎜>La troisième méthode est généralement recommandée.

    répondre
    0
  • 巴扎黑

    巴扎黑2017-05-15 17:06:50

    Ce sont des objets utilisés pour l'injection. Ce n'est qu'en injectant ces objets qu'ils peuvent être utilisés dans les fonctions suivantes
    $Le transfert de la valeur de la page de portée est requis
    $La requête http http est requise

    . . .

    répondre
    0
  • 为情所困

    为情所困2017-05-15 17:06:50

    Injection de modules, introduisez les autres modules que vous devez utiliser.
    Par exemple, $http est un module

    répondre
    0
  • Annulerrépondre