[英]Browser triggered reload inside SPA with angular routing
我有一个由节点提供服务的角度SPA,但是每当刷新/重新加载非根页面时,基于Express的服务器就会截获路由并返回“无法获取route_X”。 我的路线中缺少哪些功能来启用此刷新行为?
angular.module('appRoutes', []).config(['$routeProvider', '$locationProvider',
function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/nests.html',
controller: 'NestController'
.when('/pair/:id', {
templateUrl: 'views/pairing.html',
controller: 'PairController'
})
.when('/pairs', {
templateUrl: 'views/pairs.html',
controller: 'PairListController'
});
$locationProvider.html5Mode(true);
}
]);
我在快速服务器中定义的唯一路由如下...
app.get('/', function(req, res) {
var html = fs.readFileSync('public/views/index.html', 'utf8');
res.send(html);
});
索引文件中包含所有其他路由功能。
您必须将所有请求(期望您的静态请求)路由到index.html:
app.use("/js", express.static(__dirname + "/public/js"));
...
app.all('/*', function(req, res) {
var html = fs.readFileSync('public/views/index.html', 'utf8');
res.send(html);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.