Sto provando a spostare il codice angolare in file separati prima che il progetto cresca troppo.Inserire app, controller e servizi in file separati
Ho provato a spostare lo app
, controllers
e in file separati ma gli errori hanno fermato i punti di riferimento nel codice (o erano troppo generici).
Ho deciso di inserire il contenuto del file sul grande tag <script>
in modo che possa risolvere gli errori e farlo funzionare. Purtroppo mi sono imbattuto this(Impossibile creare un'istanza del modulo protonApp a causa di ...) e non so come monitorare il problema verso il basso (Sono nuovo di angolare)
Il
(function() {
'use strict';
...
}());
Ho arrotondato il codice perché la (piccola) ricerca che ho fatto dice che dovresti avere il tuo codice tra questi quando sono in file separati.
(function() {
'use strict';
var app = angular.module('protonApp',['ui.router','protonAppControllers','protonAppServices']);
app.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
...
}]);
app.value('debug',true);
app.run(function($rootScope,$state,$http,debug,LeftMenuService) {
...
});
}());
(function() {
'use strict';
angular.module('protonAppControllers', ['$scope','$http','LeftMenuService']);
}());
(function() {
'use strict';
angular.module('protonAppServices', ['$rootScope','$http']);
}());
(function() {
'use strict';
angular.module('protonAppControllers').controller('loginController',['$scope','$http','$state',function($scope,$http,$state){
...
}]);
}());
(function() {
angular.module('protonAppControllers').controller('surveyListController',['$scope','$http','LeftMenuService',function($scope,$http,LeftMenuService){
...
}]);
}());
(function() {
'use strict';
angular.module('protonAppControllers').controller('surveyHelpController',['$scope','$http','LeftMenuService',function($scope,$http,LeftMenuService){
...
}]);
}());
(function() {
'use strict';
angular.module('protonAppServices').service('LeftMenuService', function($http,$rootScope){
...
});
}());
EDIT
Ulteriori scavo rivela Non riesco ad accedere $rootScope
o $scope
all'interno di qualsiasi dei miei file del controller
hai fatto clic sul collegamento di errore nella console? Potrebbe darti maggiori informazioni sulla causa dell'errore – ThibaudL
Altrimenti nell'iniezione del modulo non devi aggiungere $ scope e $ http: angular.module ('protonAppServices', []); Inietti questi nel controller ma non nella dichiarazione del modulo – ThibaudL
li rimuoverò dalla dichiarazione del modulo. Grazie non sapevo che – Sevenearths