gpt4 book ai didi

Angular 仅适用于特定路线

转载 作者:行者123 更新时间:2023-12-02 16:33:05 25 4
gpt4 key购买 nike

我正在尝试实现 Angular 通用。但我想暂时将SSR限制在2条特定路线上。原因是。
1) Universal 仍在开发中,会导致 @angular/flex-layout嵌套延迟加载

出现一些意外行为

2) 我不需要在所有页面上进行 SEO

所以我尝试过这样的事情

app.get('/campaign/*/*', (req, res) => {
res.render(join(DIST_FOLDER, 'browser', 'index.html'), { req });
});

app.get('/', (req, res) => {
res.render(join(DIST_FOLDER, 'browser', 'index.html'), { req });
});

app.get('*', (req, res) => {

});

但是当我尝试在页面 /campaign/new-channel 中导航时,页面会永远重新加载。
我期望的预期行为是页面通常不呈现任何内容。

我想我必须做一些不同的事情,因为 Node Express 应该将路由处理传递给 Angular 。
知道如何实现吗?
server.ts 的其余代码从此处复制 https://github.com/angular/universal-starter/blob/master/server.ts

P.S stackoverflow 上有这篇文章 Angular universal rendering for some routes only但没有提供解决方案。所以我做了这个,因为我不知道是否允许我在答案中打开新线程

最佳答案

最后response.sendFile是我正在寻找的

app.get('/campaign/new-channel', function (req, res) {
res.sendFile(join(DIST_FOLDER, 'browser', 'index.html'));
});

您想要的只是返回 index.html 而没有任何呈现的内容

关于Angular 仅适用于特定路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49325054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com