【发布时间】:2013-09-04 10:03:48
【问题描述】:
我正在使用 Express 和 Angular 开发 Node 应用程序。我正在使用 Angular 进行路由,并且我的路由设置如下:
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.when('/', {
templateUrl: '/partials/main'
//controller: 'IndexController'
}).when('/discover', {
templateUrl: '/partials/discover'
}).when('/user/home', { //HERES THE PROBLEM CHILD!!!!!
templateUrl: '/partials/user/home'
}).otherwise({
redirectTo: '/'
});
}]).config(['$locationProvider', function ($locationProvider) {
$locationProvider.html5Mode(true);
}]);
现在,每当我尝试调用 /user/home 时——页面进入无限循环并不断重新加载控制器。我可以在节点控制台中看到该页面是从partials/user/home 调用的,其中肯定包含一个 Jade 文件。我检查了其他帖子,其中大部分都在部分路径的开头用/ 解决了,这在这里没有帮助。如果我将home.jade 转移到没有子目录的/partials 目录中,则页面加载正常。有什么想法吗?
更新:似乎每当我尝试在部分的任何子目录中加载部分时都会发生无限循环。
每个请求:
节点——App.js:
app.get('/', routes.index);
app.get('/partials/:name', routes.partials);
app.get('*', routes.index);
还有路由/index.js
exports.index = function(req, res) {
res.render('index', { title: 'Open Innovation Station' });
}
exports.partials = function(req, res) {
res.render('partials/' + req.params.name);
}
【问题讨论】:
-
你能添加你的节点配置吗?