Pug模板中的Link href

3
我将使用pug作为nodejs应用程序的视图引擎。我有一个包含导航栏的布局,其中包含指向应用程序中共同URL的链接,每个当前视图都会扩展该布局。
例如,指向登录URL的链接如下所示:
a(href='/auth/signin')`

在根网址('/')中,这个功能正常,正确地导向 '/auth/signin'。

然而,在包含'/auth/signin'、'/auth/signup'和'/auth/signout'路由的'/auth'模块内部,情况就不同了。相反,这条路线与当前模块的名称连接起来。例如,在'/auth/signin'路线中,该链接实际上是一个指向'/auth/auth/signin'的链接。点击它自然会导致404错误,但在该页面上,登录链接是一个指向'/auth/auth/auth/signin'的链接。

依此类推。

我并不完全理解这里发生了什么以及如何防止它发生。在Pug中是否有一种以绝对术语链接到我的路由的方法,而不是直接键入完整的URL(由于各种原因不切实际),就像在Ruby on Rails中使用路由助手一样?


1
如果您的href以斜杠开头,则会将其解释为绝对URL。然后,您的pug文件位于哪个文件夹中就无关紧要了。请确保您的href始终以斜杠“/”开头。 - Mohit Bhardwaj
1
哇,我肯定已经尝试过了。真尴尬!感谢您的帮助,我都快疯了。 - Nano
很高兴知道你解决了它 :) - Mohit Bhardwaj
1个回答

3

评论中的解决方案:

如果您的href以斜杠开头,则这些将被解释为绝对URL。然后,您的pug文件位于哪个文件夹中都无关紧要。请确保您的href始终以/开头。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接