user3636439
user3636439

Reputation:

routing is not working in angular.js

i am using routing in angular.js my code is :

   //controllers.js

 var ar= angular.module('ar', []);

ar.controller('lc', ['$scope', '$http', function($scope, $http){
    $http.get('login.json').success(function(data){
        $scope.art=data;
    })
}])

ar.controller("search", function(){
    this.search='a';

    this.getdata=  function  (searchquery) {
        console.log(searchquery);
    }
});



//main.js (app.js)

var myApp= angular.module('myApp',[
  'ngRoute',
  'ar'
  ]);

myApp.config(['$routeProvider', function ($routeProvider) {
 $routeProvider.
 when('/login', {
  templateUrl: 'inc/login.html',
  controller: 'lc'
 }).
 otherwise({
  redirectTo: '/login'
 });
}]);

when i goto the Homepage its not redirect to the Login page and when i click on the login button its not working either.

<!DOCTYPE html>
<html class="no-js" ng-app="myApp">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Home</title>
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <link rel="stylesheet" href="css/bootstrap.min.css">
    <style>

    </style>
    <link rel="stylesheet" href="css/bootstrap-theme.min.css">
    <link rel="stylesheet" href="css/main.css">

    <script src="js/vendor/modernizr-2.6.2-respond-1.1.0.min.js"></script>
    <script type="text/javascript" src="js/angular.js"></script>
    <script type="text/javascript" src="js/angular-route.js"></script>
    <script src="js/main.js"></script>
    <script src="js/controllers.js"></script>

</head>
<body>



<ul class="nav navbar-nav pull-right">
        <li class="active"><a href="#">Home</a></li>
         <li><a href="#/login">Login</a></li>
        </ul>
        </div><!--/.navbar-collapse -->

in bottom: i have include jquery and bootstrap's file. this is a bootstrap application. this is live example : Live example

Upvotes: 2

Views: 1914

Answers (2)

Roy M J
Roy M J

Reputation: 6938

Routes are specified correctly. What you need is to define the ng-view in your template so that the templates mentioned in specific routes are loaded into the main template

Something like :

<div class="page-container">
    <div ng-view></div>
</div>

ng-view will be the place where every template mentioned in the router will be loaded.

Upvotes: 2

Ijaz Ahmed Bhatti
Ijaz Ahmed Bhatti

Reputation: 729

i think there might be issue with your path .. its mvc base and routes define your path :)

Upvotes: -1

Related Questions