当我在应用程序中构建和导航链接时,一切正常,但在地址栏中键入则不行!
最终,我希望能够通过电子邮件将链接发送到特定的应用页面/路径,但我不确定该如何完成。

我遵循了angular router guide documentation。没错,我认为...

我正在使用NodeJS(带有express),并且在服务器中,我已将所有流量重定向到应用程序根目录。

app.get("*", function(req, res) {
    console.error("in get *")
    res.redirect("/");
});

在我的index.html中,我已经设置了基准
<base href="/">

我将我的客户溃败/路径设置如下
const appRoutes: Routes = [
  { path: 'vendor/registration', component: VendorRegistrationComponent },
  { path: 'vendors', component: VendorListComponent },
  { path: '',  redirectTo: 'vendor/registration', pathMatch: 'full' },
  { path: '**', component: PageNotFoundComponent }
];

如果我在浏览器地址栏中输入http://localhost:8080/vendors,我会得到http://localhost:8080/vendor/registration有意义,因为这是服务器告诉浏览器重定向到的位置。

那我应该如何深度链接到我的应用程序?

编辑。
Angular教程“TOUR OF HEROES”也表现出相同的行为。即直接在浏览器的地址栏中输入网址无效。该应用程序显示“正在加载...”文本,并且不会路由到 Controller 。

最佳答案

您的问题的答案已在angular2 documentation中明确描述

关于node.js - Angular 2.0深层链接不起作用。地址栏中的相同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42360859/

10-10 12:55