Я новичок в маршрутизации AngularJS, так что это может звучать как вопрос о нобе.Невозможно модулировать приложение AngularJS
Я работаю над приложением AngularJS, где есть много контроллеров. Чтобы мои контроллеры находились на отдельных JS-файлах, я решил создать отдельные модули для каждого контроллера.
Это мой главный модуль в angularmodule.js файл.
var app = angular.module('adminpanel', ['ngRoute', 'CustomersModule', 'ngFileUpload', 'wysiwyg.module', 'ui.bootstrap']).config(function ($routeProvider) {
$routeProvider.
when('/customers', {controller: CustomersCtrl, templateUrl: '/app/webroot/jakiamun/easybooks_admin/views/customers.html'}).
otherwise({redirectTo: '/dashboard'});
;
});
Это второй модуль в customers.js файл
angular.module('CustomersModule',[])
.config(function ($routeProvider) {
$routeProvider.
when('/customers', {controller: CustomersCtrl, templateUrl: '/app/webroot/jakiamun/easybooks_admin/views/customers.html'}).
otherwise({redirectTo: '/dashboard'});
;
})
.controller("CustomersCtrl" ,function($scope, $rootScope, $http) {
});
В моей странице HTML, я в том числе сценариев, как этот
<script src="<?php echo base_url(); ?>/assets/js/angular.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/angular-route.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/ng-file-upload-shim.min.js"></script> <!-- for no html5 browsers support -->
<script src="<?php echo base_url(); ?>/assets/js/ng-file-upload.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/bootstrap-colorpicker-module.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/angular-wysiwyg.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/ui-bootstrap-tpls-1.1.2.min.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/controllers/customers.js"></script>
<script src="<?php echo base_url(); ?>/assets/js/angularmodule.js"></script>
я написал ng-app='adminpanel'
тело тег моего html-кода.
Когда я запускаю свое приложение, я получаю $injector:modulerr
.
Полный отчет об ошибке
Failed to instantiate module adminpanel due to:
ReferenceError: CustomersCtrl is not defined
at http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angularmodule.js:9:53
at Object.e [as invoke] (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:40:477)
at d (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:39:148)
at http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:39:272
at n (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:7:344)
at g (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:39:49)
at fb (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:42:360)
at c (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:19:421)
at zc (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:20:225)
at be (http://localhost:8088/app/webroot/jakiamun/easybooks_admin//assets/js/angular.min.js:19:41
Пожалуйста, укажите полный URL-адрес ошибки. – strelok2010
Ваш 'CustomerModule' объявляет маршруты, используя' $ routeProvider', за исключением того, что модуль 'ngRoute' не был введен в этот модуль. – SuperVeetz
Точно такая же ошибка возникает, когда я ввожу $ routeProvider в CustomerModule @SuperVeetz – Shuaib