路由在角度下不起作用.js - 没有控制台或语法错误
Routing not working in angular.js - No console or syntax errors
我无法理解为什么路由不起作用。我已经检查了很多次语法错误或拼写错误,但情况似乎并非如此。我还检查了控制台,它没有返回任何内容。似乎没有任何问题。
var app = angular.module("myApp", ['ngRoute']);
// Main Controller
app.controller("controller", function($scope) {
$scope.search = {};
});
// Routing
app.config(function($routeProvider) {
console.log("working");
$routeProvider.when('/', {
controller: "controller",
templateUrl: "templates/listings.html"
}).when('/login', {
controller: "controller",
templateUrl: "templates/login.html"
})
});
<html ng-app="myApp">
<head>
<title>logo</title>
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<!-- ANGULAR FILES -->
<!-- Angular.js -->
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0-rc.0/angular.min.js"></script>
<!-- ngRoute Script -->
<script type="text/javascript" src="js/angular-route.js"></script>
<!-- Route -->
<script type="text/javascript" src="routes/route.js"></script>
<!-- Angular App -->
<script type="text/javascript" src="app.js"></script>
<!-- Json Data -->
<script type="text/javascript" src="data.js"></script>
<!-- ======================================================================->
<!-- Index CSS ( Mainly All The CSS) -->
<link rel="stylesheet" type="text/css" href="css/style.css">
<!-- Login CSS -->
<link rel="stylesheet" type="text/css" href="css/login.css">
<!-- Montserrat -->
<link href='https://fonts.googleapis.com/css?family=Montserrat' rel='stylesheet' type='text/css'>
<!-- Open Sans -->
<link href='https://fonts.googleapis.com/css?family=Open+Sans' rel='stylesheet' type='text/css'>
<!-- neutron -->
<link href='https://fonts.googleapis.com/css?family=Neuton' rel='stylesheet' type='text/css'>
<!-- Lato -->
<link href='https://fonts.googleapis.com/css?family=Lato' rel='stylesheet' type='text/css'>
</head>
<body ng-controller="controller">
<div class="wrapper">
<div ng-include="'includes/navbar.html'"></div>
<!-- NG VIEW -->
<div ng-view></div>
<div class="footer">
<!-- footer content goes here -->
</div>
</div>
</body>
</html>
你的代码似乎是正确的。目前,您只是加载页面,而URL没有任何变化,因此角度路由器不执行任何操作。
基本上,您需要通过.otherwise
到您的$routeProvider
来添加默认路由/
这将重定向到默认页面。
$routeProvider.when('/', {
controller: "controller",
templateUrl: "templates/listings.html"
})
.when('/login', {
controller: "controller",
templateUrl: "templates/login.html"
})
.otherwise({
redirectTo: '/'
});
确保你有相同版本的angularjs和angular-route
工作小提琴 感谢@Denis创建小提琴。
相关文章:
- 在量角器中创建一个.txt错误输出文件是手动的,而不是控制台错误
- PHP REST服务抛出异常——希望避免控制台错误
- jQuery控制台错误:无法读取属性'top'的未定义
- 角度材料和流星的控制台错误
- 调用Javascript时出现控制台错误
- 出现“未捕获的类型错误:未定义不是函数”控制台错误
- JQuery控制台错误
- 是什么导致了这个JS控制台错误
- 将Protractor配置为忽略浏览器控制台错误
- Javascript未执行.没有控制台错误,没有验证错误
- 控制台错误含义
- 浏览器控制台错误
- 为什么我的 ajax 调用不将数据存储在数据库中?没有 PHP 或控制台错误
- 尝试在drupal站点上使用响应式幻灯片,但收到控制台错误
- Javascript在IE7,8,9中返回控制台错误,但在所有其他浏览器中都能完美运行
- 通过 jQuery 发布发布表单 - 没有控制台错误
- 光滑滑块控制台错误
- 铬控制台错误
- Cufon 控制台错误,未替换字体.(引用错误:找不到变量:Cufon)
- 通过AJAX加载谷歌地图API,控制台错误