Regardez d'abord le code :
define(['angular','angular-touch'],function(angular){
'use strict';
return angular.module('weather-app',['ngTouch']);
});
Utilisez requirejs pour appeler ce module afin d'obtenir le module défini par angulairejs. Il s'avère qu'avant que la définition du module angular.module('weather-app',['ngTouch'])
n'ait été exécutée, un message d'erreur [$injector:modulerr] Failed to instantiate module weather-app due to:
a été signalé. .. (point d'arrêt S'il est défini sur 'use strict', une erreur sera déjà signalée).
et j'ai constaté que le nom du module dans le message d'erreur change avec la valeur de l'attribut dans le fichier htmlng-app
Cependant, si le weather-app
dans. le code du module js ci-dessus est remplacé par une autre valeur, il ne changera pas. L'ensemble de la pile d'invites d'erreur n'implique qu'angular.js
un fichier de ressources, et les autres sont des fichiers de plug-ins fournis avec le navigateur.
Il semble qu'angular.js ait été exécuté immédiatement après avoir été téléchargé. La définition du module dans le corps de la fonction de rappel de définition n'a pas été exécutée du tout, il a donc commencé à vérifier les instructions angulaires sur la balise html et a essayé d'initialiser ng-. app, et a constaté que ng -Le nom spécifié sur l'application n'a pas été défini par la phrase angular.module('weather-app',['ngTouch']);
.
Cela reconfirme : le problème rencontré auparavant est le même.
À ce moment-là, angulaire et deux autres modules personnalisés ont été chargés, avec un total de trois dépendances, puis la définition d'angular.module a été exécutée.
Après que le module personnalisé insère artificiellement une longue chaîne dénuée de sens, car il doit attendre qu'elle soit chargée avant de définir angulaire.module(), angulaire se charge avant cela et essaie d'initialiser ng sur la balise <html> une erreur est signalée.
La solution dont j'ai donc besoin est donc de ne pas l'exécuter immédiatement après le chargement d'angular.js, mais d'attendre que la commande angulaire.module('weather-app',['ngTouch']) soit exécutée avant de continuer. -app sur les balises.
N'écrivez pas
ng-app="weather-app"
sur la page, puis utilisez-la avecangular.bootstrap
et tout ira bienhttp://docs.ngnice.com/api/ng/function/angular.bootstrap