我有一个Angular应用程序,其中包含以下路由和Express API。
angular.module('angRoutes', []).config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){
$routeProvider
.when('/', {
templateUrl: 'public/views/home.html',
controller: 'SignUpController'
})
.when('/signUp', {
templateUrl: 'public/views/signUp.html',
controller: 'SignUpController'
})
.when('/signedUp', {
templateUrl: 'public/views/signedUp.html',
controller: 'SignUpController'
})
.when('/board', {
templateUrl: 'public/views/board.html',
controller: 'BoardController',
resolve: {
userData: ['$http', function($http){
return $http.get('/board')
.then(function(response){
return response.data;
});
}]
}
});
$locationProvider.html5Mode(true);
}]);
当我在localhost:3000
访问我的应用时,它会加载,我可以很好地浏览我的网页。但是,当我在localhost:3000/signUp
,localhost:3000/signedUp
或localhost:3000/board
时刷新页面时,页面将无法呈现。刷新localhost:3000
时,页面加载正常。
在刷新localhost:3000/signUp
或localhost:3000/signedUp
时,我收到错误页面“无法获取/注册”或“无法获取/签名”。当我刷新localhost:3000/board
页面时,我得到了我的Express API为该路由发回的JSON,但它只是以原始格式显示,因为我的HTML没有呈现。
在Chrome Devtools网络标签中,我可以看到刷新会发送signUp
请求,而不是我导航到该页面时看到的signUp.html - public/views
请求。
有谁知道发生了什么事?
谢谢!