Mar*_*ina 2 angular angular4-router
我要做的是在另一个选项卡或弹出窗口中打开路由器导航的目标。我的指示是这样的:
private router: Router;
this.router.navigate(['/page', id]);
Run Code Online (Sandbox Code Playgroud)
在路由中,我有:
const routes: Routes = [
{
path: '',
component: LayoutComponent,
children: [
{ path: 'page', loadChildren: './page/page.module#PageModule' }
]
}
];
Run Code Online (Sandbox Code Playgroud)
我想在另一个标签或弹出窗口中打开此链接。我能做什么?
这是page.ts的代码
@Component({
selector: 'app-etichetta',
templateUrl: './page.component.html',
styleUrls: ['./page.component.scss'],
animations: [routerTransition()]
})
export class PageComponent implements OnInit {
constructor(private router: Router,
private route: ActivatedRoute,
public appService: AppService) {
}
ngOnInit() {
}
}
Run Code Online (Sandbox Code Playgroud)
这是HTML:
<div [@routerTransition]>
<br>
<div class="row">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
要手动重定向,您应该首先创建一个URL,该URL使用createUrlTreemethod 进行重定向,然后重定向。
let url = this.router.createUrlTree(['/page', id])
window.open(url.toString(), '_blank')
Run Code Online (Sandbox Code Playgroud)
声明式导航也可以。
<a target="_blank" [routerLink]=['/page', id]> Link</a>
Run Code Online (Sandbox Code Playgroud)
Angular 不支持导航到新选项卡,您可以使用 window.open 来执行此操作
window.open(url, '_blank');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4273 次 |
| 最近记录: |