gpt4 book ai didi

angular - 如何处理 Angular 中的深层链接?

转载 作者:太空狗 更新时间:2023-10-29 16:59:51 25 4
gpt4 key购买 nike

对此有很多疑问。我已经浏览了好几天了。我尝试了一切,但都没有用。是的,我也检查过 angular.io,但也没有用。所以,请问有人能给出最终答案,还是能给我指出一个我可能还没有见过的答案?

这是这个 URL,它是一个深层链接,指向名为 whatever 的 Angular 应用及其带有参数的 someroute 路由。

http://somedomain.com/whatever/someroute/123456

当然会导致 404 错误。必须配置 Web 服务器。我的服务器运行 nginx,我这样做了:

location / {
try_files $uri $uri/ /whatever/index.html;
}

现在它将此服务器上每个站点的 404 错误重定向到我的 Angular 应用程序,但这是次要问题。问题是路由仍然不想启动。每次都会调用默认的 / 路由,而不是 /someroute/123456

与其指出我可能已经看过并尝试过的各种教程,不如有人能简要解释一下我错过的琐碎点是什么?

最佳答案

听起来您可能错过了 <base href=""> tag 。这个标签告诉 Angular 路由器你的应用程序的基本 URI 是什么。如果不存在,那么 Angular 假定初始导航 URI(在您的例子中为 /whatever/someroute/123456 )是基本 URI,并且所有后续路由都将相对于该 URI 执行。

尝试在 <base href="/whatever/"><head> 元素中包含 index.html 以相应地引导路由器。

如果您使用的是 Angular CLI,您还可以通过 <base href=""> 控制 ng build 元标记:

ng build --base-href '/whatever/'

关于angular - 如何处理 Angular 中的深层链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44864763/

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