2016-01-14 2 views
1

Hi iam с использованием углового с требованием. Требование управляет моей последовательностью зависимостей. Используя ленивую загрузку для контроллера загрузки, я смог загрузить мой первый домашний контроллер, но когда я захотел перейти к контроллеру панели мониторинга, iam, получающий контрольную панель панели управления, не найден. hereis кодУгловой контроллер не обнаружен или определен при ленивой загрузке

main.html

<body ng-app > 
    <div id="ViewPort" ng-view> </div> 
</body> 

shell.js

define(['mngRoute', 'mngSanitize'], function (ngRoute, ngSantize) { 

var CMSapp = angular.module('CMS', ['ngRoute', 'ngSanitize']); 

CMSapp.config(function ($routeProvider, $httpProvider) { 
    console.log($httpProvider); 
    $routeProvider 

     // route for the home page 

     .when('/', { templateUrl: 'App/Partials/home.html', resolve: loader(['Home']) }) 

     .when('/Dashboard', { templateUrl: 'App/Partials/Dashboard.html', resolve: loader(['Dashboard']) }) 

}); 
CMSapp.run(function() { 
    console.log('shell loaded'); 
    console.log(CMSapp); 
}); 


return CMSapp; 

Главная Controller.js

define(function() { 

angular.module('CMS').controller('HomeController', ["$scope", "$http", 'MainService', function ($scope, $http, mainService) { 
    $scope.message = 'Homess'; 

    $scope.InitializeController = function() 
    { 
     console.log(mainService); 
     mainService.initializeApplication($scope.initializeApplicationComplete, $scope.initializeApplicationError); 
    } 
    $scope.initializeApplicationComplete = function (response) { 
     console.log('in default initializeApplicationComplete'); 

    } 
    $scope.initializeApplicationError = function (response) { 
     console.log('in default intialize error'); 
    } 

}]); 

});

home.html

<div data-ng-controller="HomeController" ng-init="InitializeController()"> 
<span>{{message}}</span> 

Dashboardcontroller и dashboard.html такие же, единственное отличие это имя

define(function() { 

angular.module('CMS').controller('DashboardController', ["$scope", "$http", 'MainService', function ($scope, $http, mainService) { 
    $scope.message = 'Dashboard'; 

    $scope.InitializeController = function() 
    { 
     console.log(mainService); 

    } 
}]); 

});

Dasboard HTML

<div data-ng-controller="DashboardController" ng-init="InitializeController()"> 
<span>{{message}}</span> 

я был в состоянии загрузить домой и способен связываться с моделью, но это не в приборной панели, когда я вошел локальный: 8999/Main. html #/Dashboard в url дает ошибку.

См хромированной консоли Full console

Угловой, маршрут, Dasboardcontroller.js homecontroller.js shell.js не загружается успешно никакой ошибки в консоли только ошибка Dasboard контроллер не является функция, был определен

+0

Он должен быть 'нг-приложение =«CMS»' инициализировать угловые на странице –

ответ

3

Когда вы используете ng-app, Angular будет искать модуль под названием app. Если вы хотите указать настраиваемый модуль, вам необходимо сообщить об этом: ng-app="CMS"

Надеюсь, это сработает!:)

+0

Моего угловым приложение загружается, и я вижу домашнюю страницу, которая по умолчанию соответствует заданной маршрутизации. – Rakesh

+0

Итак, когда вы идете на маршрут '#/Dashboard', это не работает? – weirdpanda

+0

Да, это не работает, когда я иду на панель управления – Rakesh

2
<body ng-app > 

должен быть

<body ng-app="CMS"> 

, потому что в вашем коде вы объявляете ваш модуль, как это.

angular.module('CMS' 
0

Chrome консоль изображение console2 Вы можете увидеть мое приложение загружается бутстрапируемым и контроллеры регистрируются, а

+0

Добавьте эту информацию в качестве редактирования, чтобы вы не получили нисходящий знак. – weirdpanda

+0

спасибо за совет, я сделал это, вы можете проверить полный вид консоли. – Rakesh

Смежные вопросы