【问题标题】:Angular 2's named router outlet cannot be found?找不到 Angular 2 的命名路由器插座?
【发布时间】:2017-05-26 14:34:40
【问题描述】:

我有一个主 app.component 文件,它重定向到登录文件。我想在整个应用程序中命名路由器插座,因为我需要导航到应用程序不同位置的完整页面视图。不幸的是,重定向不起作用,并且 Angular 抱怨说

RROR 错误:未捕获(承诺中):错误:无法匹配任何路由。 URL 段:“登录”

这是代码

    nav class="navbar navbar-default navbar-static-top">
  <div class="container">
    <div class="navbar-header">
      <div class="navbar-brand">
        <p class="text-primary">
          <strong> Zuora Ecommerce Portal </strong>
        </p>
      </div>
    </div>
    <ul class="nav navbar-nav navbar-left">
      <li>
        <a href="#Login">
          <strong>Login</strong>
        </a>
      </li>
      <li><a href="#Your Info"><strong>Account Information</strong></a></li>
      <li><a href="#inv"><strong>Billing and Payments</strong></a></li>
    </ul>
  </div>
</nav>
<router-outlet></router-outlet>
<router-outlet name="main"></router-outlet>

这是路由配置:

import { NgModule }             from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import {Login} from "./login.component";

const routes: Routes = [
  { path: '', redirectTo: '/login', pathMatch: 'full' },
  { path: 'login',  component: Login, outlet:'main'},
];

@NgModule({
  imports: [ RouterModule.forRoot(routes) ],
  exports: [ RouterModule ]
})
export class AppRoutingModule {}

【问题讨论】:

  • 将 redirectTo: '/login' 改为 redirectTo: 'login'

标签: angularjs angular2-routing


【解决方案1】:

如下所示更新您的默认路线,

...
{ path: '', redirectTo: '/(main:login)', pathMatch: 'full' },
...

查看Plunker!!

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-28
    • 1970-01-01
    • 2016-12-30
    • 2017-03-09
    • 1970-01-01
    • 2020-05-16
    • 2017-02-21
    相关资源
    最近更新 更多