Не показывает вид AngularJS

0

Я пытаюсь показать вид с угловыми дорожками. консоль не выдает никаких ошибок или предупреждений.

Но в равной мере представление не отображается. Что я делаю не так?

index.html

<!DOCTYPE html>
<html lang="en" ng-app="app">
<head></head>
    <body>

        <ng-view></ng-view>

        <!-- build:js bower/vendor -->
        <script type="text/javascript" src="../bower_components/angular/angular.min.js"></script>
        <script src="../bower_components/angular-route/angular-route.min.js"></script>
        <!-- endbuild -->

        <script src="./routes.js"></script>

        <!-- build:app scripts/js || CUSTOMER -->
        <script src="./components/customer/customerService.js"></script>
        <script src="./components/customer/customerController.js"></script>
        <!-- endbuild-->

    </body>
</html>

routes.js

var _templateBase = './components';

angular.module('app', [
    'ngRoute'
])
.config(['$routeProvider', function ($routeProvider) {
        $routeProvider
        .when('/', {
            templateUrl: _templateBase + '/customer/customer.html' ,
            controller: 'customerController',
            controllerAs: '_ctrl'
        })
        .otherwise({
            redirectTo: '/'
         });
    }
]);

costomerService.js

angular.module('app', [])
        .factory('customerService', function() {

        });

costomerController.js

angular.module('app',[])
    .controller('customerController', ['$scope', function($scope, customerService) {
      //
    }]);

Это неправильно? Потому что представление не отображается? Я использую устаревшие mertodos, даю мне много пособий.

Спасибо, что они могут помочь.

Теги:
routes
electron
controller

1 ответ

1
Лучший ответ

Это создает ваше приложение, потому что вы включили второй параметр (массив зависимостей для ввода):

angular.module('app', [
    'ngRoute'
])

Удалите второй параметр в других определениях angular.module() потому что каждый раз создается новое приложение.

angular.module('app') <-- no second parameter tells it to use the existing 'app' module 
    .factory('customerService', function() {

    });

angular.module('app') <-- no second parameter tells it to use the existing 'app' module
    .controller('customerController', ['$scope', 'customerService', function($scope, customerService) {
      //
    }]);

Я добавил customerService к вашему массиву инъекций в определении вашего контроллера, потому что элементы массива должны точно совпадать с вашими параметрами функции. Кроме того, если вы используете синтаксис controllerAs как вы это делали в определении маршрута, вы можете не захотеть вводить $scope в свой контроллер.

  • 0
    Работает отлично. благодарю вас. Ты замечательный.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню