如何为网站完成路由html页面?

时间:2016-02-21 08:04:37

标签: express routing

我正在使用MEAN堆栈。例如,如果我点击一个项目,它如何路由它的项目页面,如*****。com / item / [id]?如何转到该ID的项目页面?这是使用node和express完成的吗?

2 个答案:

答案 0 :(得分:1)

好的,您需要了解单页面应用程序的路由机制。现在你应该知道你的根路径是' /'将由快递服务

app.get('/', function(req, res) {
    res.sendFile('index.html', { root: path.join(__dirname, '../public') });
});

只要将index.html提供给客户端,Angular就会接管所有路由。您必须使用路由解决方案(ui state或ngRouter)。如果你想以包含一些id的角度去特定路线,你可以创建这样的路线(假设你使用的是ui-state路由器) -

$stateProvider
  .state('user', {
      url: "/user/:id",
      templateUrl: "/angular/users/views/user.html",
      controller: "UserCtrl"
   });

在你的html文件中你会写 -

<a ui-sref="user({id: userId})">

此处userId是您要传递给路线的ID。

希望它有所帮助!

答案 1 :(得分:1)

调用路线并发送文件,有点像......

app.get('/item/:id', function (req,res){
    console.log(req.params.id); be show the param id
    res.sendFile('page.html', {id: req.params.id});
)};

More aboute routes