2016-07-30 2 views
0

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

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

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, даю мне много пособий.

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

ответ

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

Отлично работает. Спасибо. Ты замечательный. –

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