2017-02-11 5 views
0

Существует так много способов настроить угловое приложение. Я выбрал один, но теперь у меня проблемы с настройкой маршрутов.Настройка угловых маршрутов

index.html:

<html ng-app="myApp"> 
<head> 
    ...other files 
    <script src="js/app.js" type="text/javascript"></script> 
    <script src="js/routes.js" type="text/javascript"></script> 
</head> 
<body ng-controller="mainController"> 
    ...etc. 

app.js

var myApp = angular.module('myApp', [ "ngRoute","ui.bootstrap" ]); 

    myApp.controller('mainController', ['$scope', function($scope) { 
     //etc. 
    }]); 

Это, как я обычно настроить свои контроллеры с функцией обертке:

routes.js

(function() { 
    'use strict'; 

    angular 
     .module('myApp') 
     .config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) { 

      $urlRouterProvider.otherwise('/'); 

      $stateProvider 
       .state('index', { 
        url: '/', 
        templateUrl: '../index.html', 
        controller: 'mainController', 
        controllerAs: 'mainVm', 
        data: { pageTitle: 'Main' } 
       }) 
     }]); 
})(); 

Я получаю нг ошибки впрыска, так ясно, что я пропустил что-то:

angular.js:38Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.5.8/$injector/modulerr?p0=myApp&p1=Error%…3A%2F%2Flocalhost%2FCanada%2Fplugins%2Fangular%2Fangular.min.js%3A21%3A179) 
at angular.js:38 
at angular.js:4640 
at q (angular.js:321) 
at g (angular.js:4601) 
at cb (angular.js:4523) 
at c (angular.js:1758) 
at Bc (angular.js:1779) 
at fe (angular.js:1664) 
at angular.js:31763 
at HTMLDocument.b (angular.js:3207) 

код не работал до я добавил маршрутизацию. Так что вряд ли это будет где-то в моем коде.

Что мне не хватает?

+0

Просьба предоставить журнал после этой строки 'Не удалось создать модуль myApp из-за:' – Sangharsh

ответ

0

Вы импортируете модуль ngRoute, используя $stateProvider, который исходит от модуля ui-router. Вы действительно должны использовать тот или другой, но, конечно, не оба.

var myApp = angular.module('myApp', ["ngRoute", "ui.bootstrap"]); 

Должно быть:

var myApp = angular.module('myApp', ["ui.router", "ui.bootstrap"]); 

Убедитесь, что вы также включать в себя импортировать angular-ui-router.js скрипт в index.html до вашего импорта app.js сценария.

+0

ОК, исправление, похоже, не имеет значения. – DaveC426913

+1

Включили ли вы импорт скрипта для 'ui-router'? –

+1

Я сбросил угловой ui-router.js в свою папку и сделал ссылку на него. Должно быть, это было не в том месте. Трудно отлаживать. – DaveC426913

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