我正在使用Nodejs(express),ejs和Angular构建的应用程序。 后端将呈现布局ejs模板,如下所示:
app.set('view engine', 'ejs');
app.set('layout', 'shared/layout');
和
<div ui-view></div>
<%- body %>
</body>
当发生404错误时,它会被捕获(由Node捕获),而是呈现404模板:
if (req.xhr) {
res.status(404).render('shared/404', { title: '404', message: 'Page not found' })
}
问题是,当您点击404页面上的链接时,会呈现新页面,但404页面仍然会“徘徊”。在底部(一次显示2页)。
这应该由前端处理吗?或者这是后端设置的问题(以及这里的最佳做法是什么?),或者我是否需要强制进行某种类似的“刷新”?单击链接时的页面,404模板消失了吗?我曾尝试使用Angular硬刷新:<a ui-sref="state1" ui-sref-opts="{reload: true}">State 1</a>
但后端似乎也注入了href="state1"
(我认为它在Angular接管之前会这样做?)