路由在angular.js中不起作用

时间:2014-09-16 05:40:15

标签: javascript angularjs

我在angular.js中使用路由 我的代码是:

   //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'
 });
}]);

当我转到主页时,它不会重定向到登录页面,当我点击登录按钮时,它也无法正常工作。

<!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 -->

在底部: 我有包含jquery和bootstrap的文件。 这是一个bootstrap应用程序。 这是实例: Live example

2 个答案:

答案 0 :(得分:2)

正确指定路线。您需要的是在模板中定义ng-view,以便将特定路径中提到的模板加载到主模板中

类似的东西:

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

ng-view将是加载路由器中提到的每个模板的地方。

答案 1 :(得分:-1)

我认为您的路径可能存在问题..其mvc基础和路径定义了您的路径:)