我一直在开发一个AngularJS应用程序的最后一个月与angular v1.5.8
和angular-route v1.5.8
和node v 7.1.0
(与nvm
)。突然之间,我的网址包含一个hashbang,路由不起作用,所以我无法更改页面。AngularJS网址突然包含hashbang
而不是
http://localhost:8080/#/about
当我第一次加载页面时,我得到http://localhost:8080/#!/about
,当我尝试通过单击<a href="#/chat">
更改为http://localhost:8080/#/chat
我得到http://127.0.0.1:3000/#!/about#%2Fchat
。
有谁知道为什么会发生这种情况,或者我可能改变了这种新行为?我已经删除了我的node_modules
和npm install
再次编辑,它仍然发生。
相关代码如下
的index.html
<ul class="nav navbar-nav navbar-right">
<li><a href="#/about">About</a></li>
<li><a href="#/chat">Chat</a></li>
</ul>
routes.js
angular.module('routes', ['ngRoute'])
.config(['$routeProvider', function($routeProvider){
$routeProvider
.when('/about', {
templateUrl: 'views/about.html',
controller: 'AboutController'
})
.when('/chat', {
templateUrl: 'views/chat.html',
controller: 'ChatController'
})
.otherwise({
redirectTo: '/about'
});
}]);