0

This is my index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
  <link rel="stylesheet" type="text/css" href="xploresoftware.css">
  </head>
<body ng-app="myapp">
<nav role="navigation" class="navbar navbar-default navbar-fixed-top" id="navbar">
    <div class="container-fluid">
        <!-- Brand and toggle get grouped for better mobile display -->
        <div class="navbar-header">
            <button type="button" data-target="#navbarCollapse" data-toggle="collapse" class="navbar-toggle">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a href="#/" class="navbar-brand" id="logo"><img src="Images/Drawing.png"></a>
        </div>
        <!-- Collection of nav links and other content for toggling -->
        <div id="navbarCollapse" class="collapse navbar-collapse">
            <ul class="nav navbar-nav" id="subject">
                <li><a href="#/ece">Electrical Engineering</a></li>
                <li><a href="#/cs"> Computer Science</a></li>
                <li><a href="#/mech"> Mechanical Engineering</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-right">
                <li><a href="#/">Login</a></li>

            </ul>
        </div>
    </div>
</nav>



 <div class="container-fluid" style="margin-top:55px" >

         <div ng-view="">  </div>


 </div>


</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
  <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-route.min.js"></script>
  <script src="angularview.js"></script>

</body>
</html>

This is my angularview.js file

(function(){
var app=angular.module('myapp',['ngRoute']); 
 app.config([function($routeProvider){

    $routeProvider.when('/',{
        templateUrl:'home.html'
    })
    .when('/ece',{
        templateUrl:"ece.html"
    })
    .when('/cs',{
        templateUrl:"cs.html"
    })
    .when('/mech',{
        templateUrl:"mech.html"
    })
    .otherwise({
        redirectTo:"/"
    });
 }]);
})();

The error caught: Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=myapp&p1=Error%3A%2…ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2Fangular.min.js%3A19%3A463

1 Answer 1

0

This error appears to caused by a missing dependency. I see that you need to include de ngRoute dependency in your app module.

Change your first line to:

var app=angular.module('myapp',['ngRoute']); 

Try changing this line too

app.config(['$routeProvide', function($routeProvider){ ... }])

EDIT:

Take a look at this JSFiddle

https://jsfiddle.net/relferreira/dzx8w38t/2/

HTML:

<div data-ng-app="app">

  <div data-ng-controller="MainController as main">
    {{main.test}}
  </div>
   <ul class="nav navbar-nav" id="subject">
     <li><a href="#/ece">Electrical Engineering</a></li>
     <li><a href="#/cs"> Computer Science</a></li>
     <li><a href="#/mech"> Mechanical Engineering</a></li>
  </ul>
  <div ng-view>  </div>

</div>

JS:

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

angular.module('app')
    .config(config)
    .controller('MainController', mainController);


config.$inject = ['$routeProvider'];
function config($routeProvider){

    $routeProvider.when('/',{
        template:'<h1>home</h1>'
    })
    .when('/ece',{
        template:"<h1>ece</h1>"
    })
    .when('/cs',{
        template:"<h1>cs</h1>"
    })
    .when('/mech',{
        template:"<h1>mech</h1>"
    })
    .otherwise({
        redirectTo:"/"
    });
 }

mainController.$inject = ['$scope'];

function mainController($scope){

    var vm = this;

    vm.test = 'test'

}
Sign up to request clarification or add additional context in comments.

3 Comments

myapp module is never called
Editted with another try
I found out the problem though , It is because I am importing my page in chrome, which can't generate XmlhTTP REQUEST so I used in mozzila and it works

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.