如何在视图中创建href链接,指向Express路线?

时间:2015-08-20 14:38:43

标签: node.js express

我想在我的视图中创建href链接,但我不希望指向静态地址。我想根据路线动态创建href网址。

示例:

// app.js:
app.get('/test', function testPage(req, res, next) {
    // do something here
});

// inside view.html:
<a href="path('testPage')" /> // something similar
<a href="/test" /> I do NOT want this!

我错过了什么,或者没有办法轻易做到这一点?

我搜索过,发现app._router.stack有所有路线。但它们只是一个简单的 ARRAY ,所以它们没有任何形式的id或smth!我想出的是一个解析所有路径(来自堆栈)的函数,得到名称,只有当函数名称时才设置({{3然后用键(路由名称)创建一个对象 - &gt;路径。 然后我可以在视图中使用这个函数(不知何故)创建路径,对吗?

有更好的想法吗?

1 个答案:

答案 0 :(得分:1)

来自PHP框架背景,我习惯了双向路由。但是,从我在教程中看到的,人们只是使用静态链接。我认为这与Node.js Web应用程序的本质有关。其中很多都是SPA,因此您只需构建一个API,然后从前端应用程序静态引用它。

在研究这个主题时,我来到了这个名为2-way router的小库,它可以与Express一起使用。我还没有尝试过它,但它可能对你有用。

编辑:尝试重新搜索我的搜索,我找到了similar thread about url generationexpress route naming

编辑:您还可以实施django-like routing