2016-09-02 9 views
0

У меня есть структура папок, как этот http://i.imgur.com/X8p6Qhi.pngangularjs щ-вид не работает с templateUrl

Это мой index.html

<!DOCTYPE html> 
<html lang="en" ng-app="cartApp"> 
<head> 
    <meta charset="UTF-8"> 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 


    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.js"></script> 

    <script src="./dashboard/dashboardCtrl.js"></script> 

</head> 
<body> 


    <ui-view></ui-view> 
</body> 
</html> 

в route.js

var app = angular.module('cartApp', ['ui.router']); 

app.config(['$locationProvider',function($stateProvider, $urlRouterProvider, $locationProvider) { 


    $locationProvider.html5Mode(true); 

    $urlRouterProvider.otherwise('/'); 

    $stateProvider 


     .state('home', { 
      url: '/', 
      templateUrl: './dashboard/index.html', 
      controller: 'dashboardCtrl' 
     }); 

}]); 

общественные /dashboardCtrl.html

<div ng-controller="dashboardCtrl as dash"> 
    <h1>Dashboard</h1> 
    <p>{{dash.something}}</p> 
</div> 

общественная/приборная панельCtrl.js

var app = angular.module('cartApp', ['ui.router']); 
app.controller('dashboardCtrl', [function() { 

    var dash = this; 

    dash.something = "something"; 
}]); 

Все. Я понятия не имею, где ошибка, все кажется мне прекрасным. Когда я загружаю http://localhost:4000/, я ничего не видел. Это пусто.

+0

Выкрутить ./ из templateUrl, указать путь от корневого каталога –

+0

могли бы вы проверить вашу консоль, вы ($ stateProvider, $ urlRouterProvider, $ locationProvider) { 'с неправильной последовательностью зависимостей и впрыском –

+0

@PankajParkar ah, что это должно быть тогда? –

ответ

0

изменить ваш route.js файл в

var app = angular.module('cartApp', ['ui.router']); 

app.config(['$locationProvider','$stateProvider','$urlRouterProvider',function($stateProvider, $urlRouterProvider, $locationProvider) { 


    $locationProvider.html5Mode(true); 

    $urlRouterProvider.otherwise('/'); 

    $stateProvider 


     .state('home', { 
      url: '/', 
      templateUrl: 'dashboard/index.html', 
      controller: 'dashboardCtrl' 
     }); 

}]); 
0

В route.js вы decared модуль cartApp, контроллер приборной панели вы снова объявили тот же модуль cartApp.

Так что я думаю, проблема с вашим модулем, как вы заявляли один и тот же модуль несколько раз. И проверьте порядок зависимостей конфигурации. Попробуйте так:

route.js

var app = angular.module('cartApp', ['ui.router']); 

app.config(['$locationProvider','$urlRouterProvider''$stateProvider',function($locationProvider,$urlRouterProvider, $stateProvider) { 


    $locationProvider.html5Mode(true); 

    $urlRouterProvider.otherwise('/'); 

    $stateProvider 


     .state('home', { 
      url: '/', 
      templateUrl: './dashboard/index.html', 
      controller: 'dashboardCtrl' 
     }); 

}]); 

dashboard.js:

app.controller('dashboardCtrl', [function() { 

    var dash = this; 

    dash.something = "something"; 
}]);