2017-02-11 82 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' } 
       }) 
     }]); 
})(); 

我是getti纳克注射错误,这么清楚我错过了一些东西:

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

请在此行后面提供日志'由于: – Sangharsh

回答

0

您正在使用来自ui-router模块的$stateProvider导入ngRoute模块。你应该真正使用其中一种,但肯定不是两种。

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

应该是:

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

请确保您还包括在您的index.html一个angular-ui-router.js脚本导入app.js脚本导入之前。

+0

没有实例化模块myApp,确定这似乎没有区别。 – DaveC426913

+1

你是否包含'ui-router'的脚本导入? –

+1

我放弃了我的文件夹中的angular-ui-router.js并对其进行了引用。我一定是把它放在了错误的地方。很难调试。 – DaveC426913