1

我正在尝试将数组的索引值传递到路由中,因此我可以使用 id 将特定对象加载到详细视图中。

注入索引并更改路径的控制器

location.path('/detail/'+index);

$routeProvider 处理详细路由

.when('/detail/:index', { 
    controller: DetailViewCtrl, templateUrl: 'partials/detail' 
});

处理部分加载的 Express 脚本

app.get('/partials/:partial', function(req, res) {
    return res.render('partials/' + req.params['partial']);
};

如果我传入一个 5 的索引,那么我希望 URL 看起来像“localhost:3000/detail/5”,我确实在我的浏览器中得到了它,但是服务器返回一个 404 错误,试图寻找一些奇怪的地方网址“localhost:3000/detail/partials/detail.” 我不知道在部分之前添加的“细节”来自哪里。

很高兴知道幕后发生了什么以及如何解决问题。如何在路由中传递自定义变量而不让快递发疯?

4

1 回答 1

2

在前面templateUrl加上/

.when('/detail/:index', { 
   controller: DetailViewCtrl, 
   templateUrl: '/partials/detail' 
});

base或在 HTMLhead元素下插入标签,如下所示:

<base href="/" />
于 2013-07-05T17:20:28.157 回答