Ich habe einen Controller, den ich asynchron abrufen möchte, der die angular-cookies-Bibliothek benötigt.Wie man einen Controller asynchron lädt und an das Winkelmodul anfügt
Daher verwende ich jQuery zum Abrufen und Ausführen der Angular-Cookies-Bibliothek, dann holen Sie und führen Sie die Datei mit dem Controller. Mein aktueller Code ist als unten:
$.getScript("http://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular-cookies.min.js", function() {
app.requires.push('ngCookies');
$.getScript("js/mailListCtrl.php", function() {
console.log("Succesfully fetched controller mailListCtrl");
});
});
Diese Arbeit gut, und beide der Skripte sind in globalem Bereich laufen, aber der Controller mailListCtrl nie an mein Modul angebracht. Dies ist, wie mailListCtrl.js wie folgt aussieht:
console.log("mailListCtrl.js is loaded"); // This is executed
app.controller('mailListCtrl', ['$http', '$timeout', '$cookies', '$scope', function ($http, $timeout, $cookies, $scope) {
console.log("mailListCtrl is loaded, and code is executing"); // This is never executed
// Lots of code...
}]);
Also mein Problem ist, dass ich nicht in der Lage den Controller zu meinem Winkelmodul nach dem ersten Laden der Seite zu befestigen. Ich wäre sehr dankbar, wenn jemand eine Lösung dafür hätte.
Ist 'app' eine globale Variable? Gibt es mehr als eine App? – fahadash
Es gibt nur eine App, und ja, es ist eine globale Variable. Es wird wie folgt deklariert: 'var app = angular.module (" app ", ['ngRoute', 'eckige-lade-bar']);' – tjespe