首页 > 解决方案 > MEAN Stack - SPA webapp 上的 *refresh*

问题描述

我在我的 angular4 客户端使用哈希定位策略,在开发模式下刷新正在工作,但是当编译到生产模式(ng build -prod)时,刷新会破坏页面 - 开发人员控制台显示GET <url> net::ERR_CONNECTION_REFUSEDERROR of ProgressEvent.

在 app.js 文件中的服务器端(node + express),我们有以下代码:

app.use(function(req, res, next) {
    return res.render("index");
});

提前致谢

标签: node.jsangularexpressrefreshmean-stack

解决方案


尝试在定义了所有路由的位置添加以下代码。确保这是最后/低于所有其他路线。

app.all('/*', function(req, res) {
    res.sendFile('index.html', { root: webRoot });
});

服务器上定义的 Angular 目录webRoot的路径在哪里。dist在您的服务器上,您可以将其定义为var webRoot = _dirname + '/../../client/dist';

有关更多说明,请查看res.sendFile()的官方 Express 文档


推荐阅读