Angular 4 是否允许路由到同一域中的外部路由?
Does Angular 4 allow rout to external routes in same domain?
单个域下有两个不同的angular应用程序app-1和app-2 mydomain.com
像这样:
- 我的域名。com/app-1
- 我的域名。com/app-2
这两个应用程序相互之间一无所知
问题是想要使用 routerLink 从 app-1 导航到 app-2
<a [routerLink]="['app-2']" > move <a/>
Angular 4 是否允许路由到同一域中的外部路由?
用 routerLink 好像做不到。 RouterLink 指令使用路由器描述来完成他的工作,因此它不会让您转到另一个应用程序。即使您尝试像这样按 "url" 导航:
this.router.navigateByUrl('mydomain.com/app-2');
它将根据路由器描述验证 url 并告诉您它不匹配(错误:无法匹配任何路由。URL 段)。
这里认为,您需要使用标准javascript导航来更改网站。
像这样:
<a href="http://domain2.com/app2/home"></a>
如果您有很多 url 移动到您的网站,您也可以将它与 angular 管道混合使用。我们可以想象这样的事情:
<a [href]=" '/home' | toApp2Url"> hey</a>
使用 纯管道 像这样:
@Pipe({name: 'toApp2Url', pure: true})
export class ToApp2Url implements PipeTransform {
transform(value: string): string {
return 'http://domain2.com/app2' + value;
}
}
单个域下有两个不同的angular应用程序app-1和app-2 mydomain.com
像这样:
- 我的域名。com/app-1
- 我的域名。com/app-2
这两个应用程序相互之间一无所知
问题是想要使用 routerLink 从 app-1 导航到 app-2
<a [routerLink]="['app-2']" > move <a/>
Angular 4 是否允许路由到同一域中的外部路由?
用 routerLink 好像做不到。 RouterLink 指令使用路由器描述来完成他的工作,因此它不会让您转到另一个应用程序。即使您尝试像这样按 "url" 导航:
this.router.navigateByUrl('mydomain.com/app-2');
它将根据路由器描述验证 url 并告诉您它不匹配(错误:无法匹配任何路由。URL 段)。
这里认为,您需要使用标准javascript导航来更改网站。
像这样:
<a href="http://domain2.com/app2/home"></a>
如果您有很多 url 移动到您的网站,您也可以将它与 angular 管道混合使用。我们可以想象这样的事情:
<a [href]=" '/home' | toApp2Url"> hey</a>
使用 纯管道 像这样:
@Pipe({name: 'toApp2Url', pure: true})
export class ToApp2Url implements PipeTransform {
transform(value: string): string {
return 'http://domain2.com/app2' + value;
}
}