重定向到Angular 2路由中的新页面

实用的凯沃克

我有一个场景,说一个主页(带有main.html的app.component.ts)被默认路由

app.component.ts

@RouteConfig([
    {path: '/',name : 'Home' , component : HomeComponent , useAsDefault: true },
    {path: '/user', name : 'User' , component : UserComponent },
    {path: '/about', name : 'About' , component : AboutComponent},
    {path : 'contact', name : 'Contact' , component : ContactComponent}
])

main.html

<a [routerLink]="['/Home']">Home</a>
<a [routerLink]="['/User']">User Login</a>
<a [routerLink]="['/About']">About</a>
<a [routerLink]="['/Contact']">Contact</a>

<router-outlet></router-outlet>

现在让我们说说我想使用路由器出口路由的2个组件,但是对于用户,我想路由到整个新页面,即不在路由器出口。我试过navigatenavigateByUrl不工作但仍然加载它的<router-outlet>请不要建议window.href

香港专业教育学院试图在angular2 / router中使用Redirect类,但无法做到有需要。

贡特·佐赫鲍尔(GünterZöchbauer)

更新:此答案中的整个路由器配置代码适用于在6/2016左右弃用并删除的路由器

我认为您想要的是儿童路线-请参阅Plunker

更新了Plunker,导航已移至Page1

其中父路径允许在Page1之间切换Page2Page1允许在About之间切换Contact并且Page2仅具有User

Page2也可能是UserComponent直接的,仅当此页面应支持多个组件时,才有必要使其成为具有子路由的组件。

您可以与导航路线的User,并且例如About

router.navigate(['/Page1', 'About']);
router.navigate(['/Page2', 'User']);
import {Component, Directive, Output, EventEmitter} from 'angular2/core'
import {ROUTER_DIRECTIVES, RouteConfig} from 'angular2/router';

@Component({
  selector: 'contact',
  directives: [],
  template: `
  <h2>contact</h2>
`
})
export class ContactComponent {
}
@Component({
  selector: 'about',
  directives: [],
  template: `
  <h2>about</h2>
`
})
export class AboutComponent {
}
@Component({
  selector: 'user',
  directives: [],
  template: `
  <h2>user</h2>
`
})
export class UserComponent {
}
@Component({
  selector: 'page1',
  directives: [ROUTER_DIRECTIVES],
  template: `
  <h2>page1</h2>
  <router-outlet></router-outlet>
`
})
@RouteConfig([
    {path: '/about', name : 'About' , component : AboutComponent, useAsDefault: true},
    {path : '/contact', name : 'Contact' , component : ContactComponent}
])
export class Page1 {
}

@Component({
  selector: 'page2',
  directives: [ROUTER_DIRECTIVES],
  template: `
  <h2>page2</h2>
  <router-outlet></router-outlet>
`
})
@RouteConfig([
    {path: '/user', name : 'User' , component : UserComponent, useAsDefault: true},
])
export class Page2 {
}
@Component({
  selector: 'my-app',
  directives: [ROUTER_DIRECTIVES],
  template: `
  <h2>Hello {{name}}</h2>
  <a href="#" [routerLink]="['/Page1','About']">About</a>
  <a href="#" [routerLink]="['/Page1','Contact']">Contact</a>
  <a href="#" [routerLink]="['/Page2','User']">User</a>
  <router-outlet></router-outlet>
`
})
@RouteConfig([
    {path: '/page1/...',name : 'Page1' , component : Page1 , useAsDefault: true },
    {path: '/page2/...', name : 'Page2' , component : Page2 },
])
export class App {
  constructor() {
    this.name = 'Angular2';
  }  
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

htaccess重定向到Angular路由

来自分类Dev

使用$ routeProvider重定向到Angular之外的路由

来自分类Dev

PHP的联系方式重定向需要它重定向到新页面

来自分类Dev

Spring Security和angular javascript重定向到登录页面

来自分类Dev

从Google App脚本重定向到新页面

来自分类Dev

Angular-从JavaScript重定向到路由

来自分类Dev

将多个旧页面重定向到新页面

来自分类Dev

使用Angular2,如何在登录重定向之前重定向到先前的URL

来自分类Dev

路由时Angular 2路由器刷新页面

来自分类Dev

刷新页面时,angular2 rc1默认路由问题

来自分类Dev

在Rails 4路由中重定向

来自分类Dev

Angular2-路由到新页面时,并非所有子组件都被破坏

来自分类Dev

如何在Angular2 rc3路由中处理来自oauth重定向URL的哈希片段

来自分类Dev

Angular 2路由:刷新页面并使用参数获取“无法加载资源”错误

来自分类Dev

从Javascript接收数据后重定向到新页面

来自分类Dev

Spring Security和Angular javascript重定向到登录页面

来自分类Dev

重定向到新页面时存在状态

来自分类Dev

Angular.js:prettyPhoto URL重定向到角度路由中提到的默认页面

来自分类Dev

javascript中的onclick重定向到新页面

来自分类Dev

Django提交表单->重定向到新页面->自动更新新页面

来自分类Dev

Angular2-无法重定向到NotFound页面

来自分类Dev

按钮值重定向到新页面

来自分类Dev

显示加载图标,然后重定向到新页面

来自分类Dev

使用 ValidationError 而不是重定向到新页面

来自分类Dev

通过对话框重定向到新页面

来自分类Dev

重定向到路由

来自分类Dev

如何从servlet重定向到新页面

来自分类Dev

React Router Dom 受保护的路由在刷新页面期间始终重定向到登录

来自分类Dev

如何连续重定向到 rails 中的新页面?

Related 相关文章

  1. 1

    htaccess重定向到Angular路由

  2. 2

    使用$ routeProvider重定向到Angular之外的路由

  3. 3

    PHP的联系方式重定向需要它重定向到新页面

  4. 4

    Spring Security和angular javascript重定向到登录页面

  5. 5

    从Google App脚本重定向到新页面

  6. 6

    Angular-从JavaScript重定向到路由

  7. 7

    将多个旧页面重定向到新页面

  8. 8

    使用Angular2,如何在登录重定向之前重定向到先前的URL

  9. 9

    路由时Angular 2路由器刷新页面

  10. 10

    刷新页面时,angular2 rc1默认路由问题

  11. 11

    在Rails 4路由中重定向

  12. 12

    Angular2-路由到新页面时,并非所有子组件都被破坏

  13. 13

    如何在Angular2 rc3路由中处理来自oauth重定向URL的哈希片段

  14. 14

    Angular 2路由:刷新页面并使用参数获取“无法加载资源”错误

  15. 15

    从Javascript接收数据后重定向到新页面

  16. 16

    Spring Security和Angular javascript重定向到登录页面

  17. 17

    重定向到新页面时存在状态

  18. 18

    Angular.js:prettyPhoto URL重定向到角度路由中提到的默认页面

  19. 19

    javascript中的onclick重定向到新页面

  20. 20

    Django提交表单->重定向到新页面->自动更新新页面

  21. 21

    Angular2-无法重定向到NotFound页面

  22. 22

    按钮值重定向到新页面

  23. 23

    显示加载图标,然后重定向到新页面

  24. 24

    使用 ValidationError 而不是重定向到新页面

  25. 25

    通过对话框重定向到新页面

  26. 26

    重定向到路由

  27. 27

    如何从servlet重定向到新页面

  28. 28

    React Router Dom 受保护的路由在刷新页面期间始终重定向到登录

  29. 29

    如何连续重定向到 rails 中的新页面?

热门标签

归档