【问题标题】:Angular cant find component on zero path角度无法在零路径上找到组件
【发布时间】:2017-05-15 12:15:37
【问题描述】:

当我访问我的页面时没有任何子网址(又名路径:'')我收到以下错误:

Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'login'

但如果我点击一个链接,它会将我重定向到/(outside:login),它会按预期工作。 在路径 '' 上时如何应用此功能?

当我在没有 url 段时,我点击链接使其工作:

  <a [routerLink]="['/', {outlets: {'outside': 'login'}}]" routerLinkActive="active">Login</a>

路由器:

RouterModule.forRoot([
  {
            path : 'bank',
            component: BankComponent,
            outlet: 'regular'
        },
          {
            path: '',
            redirectTo : 'login' ,
            pathMatch: 'full',
          },
          {
            path: 'login',
            component: LoginhandlerComponent,
            outlet: 'outside'
          },
])

显示:

<div *ngIf="user.username">
                  <a [routerLink]="['/', {outlets: {'regular': 'druglab'}}]" routerLinkActive="active">Druglab</a>


    <div>
    <router-outlet name="regular"></router-outlet>
    </div>
</div>
<div *ngIf="loggedin == false">
                  <a [routerLink]="['/', {outlets: {'outside': 'login'}}]" routerLinkActive="active">login</a>


// other things
    <div>
    <router-outlet name="outside"></router-outlet>
    </div>
</div>

app.component.ts for /

loggedin = false;
user = {};
    this.CoreService.reloadUserData().subscribe((value) => {
      if (value.user) {
        this.user = value.user;
        this.loggedin = true;

      }
    });

如何在不使用 url 段/路径时使其自动转到登录模块?

【问题讨论】:

  • 我认为您需要 redirectTo 路径 redirectTo : '/login' 的起始 /
  • @JayChase 没有区别。

标签: javascript angular angular2-routing


【解决方案1】:

看起来语法发生了一些变化。我得到了一个重定向到这样的命名插座:

      {
        path: '',
        redirectTo: '/(outside:login)',
        pathMatch: 'full'
      },
      {
        path: 'login',
        component: LoginhandlerComponent,
        outlet: 'outside'
      },

【讨论】:

  • 然后我得到:错误错误:未捕获(承诺中):错误:找不到外部出口以加载“LoginhandlerComponent”错误:找不到外部出口以加载“LoginhandlerComponent”
  • @maria 你的代码中有两个出口你在视图&lt;router-outlet name="outside"&gt;&lt;/router-outlet&gt; 中有相应的路由器出口吗?
  • 是的。两者都在那里。
猜你喜欢
  • 2021-07-24
  • 2020-10-16
  • 2020-03-16
  • 2017-11-19
  • 2022-06-25
  • 2011-02-23
  • 1970-01-01
  • 2018-07-11
  • 2015-01-08
相关资源
最近更新 更多