Maison > interface Web > js tutoriel > Comment corriger les erreurs « L'argument 'ContactController' n'est pas une fonction » dans Angular 1.3 ?

Comment corriger les erreurs « L'argument 'ContactController' n'est pas une fonction » dans Angular 1.3 ?

Linda Hamilton
Libérer: 2024-12-01 21:56:14
original
490 Les gens l'ont consulté

How to Fix

Problème : Erreur de déclaration du contrôleur global

Angular 1.3 a déconseillé l'utilisation de déclarations de contrôleur globales sur la portée globale. Ce problème se manifeste par une erreur indiquant "L'argument 'ContactController' n'est pas une fonction, n'est pas défini", empêchant les contrôleurs d'être définis globalement sans enregistrement explicite.

Solution : enregistrer les contrôleurs avec la syntaxe du module

Pour résoudre ce problème, les contrôleurs doivent être enregistrés à l'aide de la syntaxe module.controller. Par exemple :

angular.module('app', []).controller('ContactController', ['$scope', function ContactController($scope) {
  // Controller logic
}]);
Copier après la connexion

Alternativement, vous pouvez injecter le contrôleur en tant que fonction :

function ContactController($scope) {
  // Controller logic
}
ContactController.$inject = ['$scope'];
angular.module('app', []).controller('ContactController', ContactController);
Copier après la connexion

Activer les globales

Si vous préférez utiliser des déclarations globales, vous Vous pouvez les activer en définissant AllowGlobals dans $controllerProvider.

angular.module('app')
  .config(['$controllerProvider', function($controllerProvider) {
    $controllerProvider.allowGlobals();
  }]);
Copier après la connexion

Supplémentaire Notes

  • Assurez-vous que le nom de votre application est inclus dans la directive ng-app sur l'élément racine (par exemple, ng-app="myApp").
  • Vérifiez que les scripts corrects sont inclus.
  • Évitez de définir le même module deux fois à des emplacements différents, car cela pourrait écraser les entités précédemment enregistrées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal