当前位置: 首页 > 知识库问答 >
问题:

错误:无法匹配任何路由。URL段:在angular9中

姬振
2023-03-14

我使用angular9版本,我在路由器模块中给出了所有路径,但我得到了这种类型的错误核心。js:6228错误错误:未捕获(在promise中):错误:无法匹配任何路由。URL段:“mystore”。组件“错误:无法匹配任何路由。URL段:“mystore”。ApplyRedirects上的“component”。CatchSubscriber上的noMatchError(router.js:4396)。CatchSubscriber的选择器(router.js:4360)。MapSubscriber出现错误(catchError.js:29)_MapSubscriber出现错误(Subscriber.js:75)。MapSubscriber出现错误(Subscriber.js:55)_MapSubscriber出现错误(Subscriber.js:75)。MapSubscriber出现错误(Subscriber.js:55)_MapSubscriber出现错误(Subscriber.js:75)。ThrowIfEmptySubscriber出现错误(Subscriber.js:55)_resolvePromise(zone常青.js:798)的resolvePro(zone长青.js:750)的错误(Subscriber.js:75)。js:860在ZoneDelegate。对象上的invokeTask(区域常绿.js:399)。ZoneDelegate上的onInvokeTask(core.js:41632)。位于zone的invokeTask(zone常青.js:398)。在ZoneTask的drainMicroTaskQueue(zone常青.js:569)上运行任务(zone长青.js:167)。invokeTask[asinvoke](区域常绿.js:484)

mystore.component.html

<div id="myCarousel" class="carousel slide" data-ride="carousel">
  <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
    <li data-target="#myCarousel" data-slide-to="1"></li>
    <li data-target="#myCarousel" data-slide-to="2"></li>
  </ol>

  <!-- Wrapper for slides -->
  <div class="carousel-inner">
    <div class="item active">
      <img src="la.jpg" alt="Los Angeles">
    </div>

    <div class="item">
      <img src="chicago.jpg" alt="Chicago">
    </div>

    <div class="item">
      <img src="ny.jpg" alt="New York">
    </div>
  </div>

  <!-- Left and right controls -->
  <a class="left carousel-control" href="#myCarousel" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#myCarousel" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right"></span>
    <span class="sr-only">Next</span>
  </a>
</div>

菜单.组件.html

<nav class="navbar navbar-expand-sm bg-success navbar-dark">
  <ul class="navbar-nav">
    <li class="nav-item active">
      <a class=" nav-link"  routerLink="/mystore.component" routerLinkActive="active">MyStore</a>
    </li>
    <li class="nav-item">
      <a class=" nav-link"   routerLink="/admin.component" routerLinkActive="active">Admin</a>
    </li>
    <li class="nav-item">
      <a class=" nav-link"   routerLink="/users.component"  routerLinkActive="active">User</a>
    </li>
    <li class="nav-item">
      <div class="dropdown">
   <button type="button" class="btn btn-success dropdown-toggle" data-toggle="dropdown">
      Product
    </button> 
    <div class="dropdown-menu">
      <a class="dropdown-item" routerLink="#">Grosery</a>
      <a class="dropdown-item" routerLink="#">Vegetable</a>
      <a class="dropdown-item" routerLink="#">Cusmatic</a>
    </div>
  </div>
    </li>
  </ul>
</nav>

app . routing ing . ts

  import { NgModule } from '@angular/core';
    import { Routes, RouterModule } from '@angular/router';
    import { AdminComponent } from './admin/admin.component';
    import { UsersComponent } from './users/users.component';
    import { MystoreComponent } from './mystore/mystore.component';

    const routes: Routes = [
        { path: '', redirectTo:'mystore',pathMatch: 'full'},
        { path: 'admin.component', component: AdminComponent },
        { path: 'users.component', component: UsersComponent }
    ];

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

共有2个答案

米俊喆
2023-03-14

它曾经在我身上发生过。我在这个论坛上找到了答案,但是我没有运气。

就我而言,我无法将任何路由器链接绑定到事件处理程序,但是如果我记下所需的URL路径,则可以访问它。

示例

localhost:4200/dashboard

因为我看到你的程序还没有那么复杂,我建议你生成新的!

公孙成仁
2023-03-14

您正在重定向mystore,但未定义任何 mystore 路径。同样在组件模板中,您将其称为 mystore.component。您需要确定单个路径名。尝试以下操作

const routes: Routes = [
  { path: '', redirectTo:'mystore.component', pathMatch: 'full'},
  { path: 'admin.component', component: AdminComponent },
  { path: 'users.component', component: UsersComponent },
  { path: 'mystore.component', component: UsersComponent }
];
 类似资料:
  • 我收到如下错误消息: 错误错误:未捕获(promise中):错误:无法匹配任何路由。URL段:“主页”错误:无法匹配任何路由。URL段:ApplyRedirects.push../node_modules/@angular/router/fesm5/router.js.ApplyRedirects。CatchSubscriber上的noMatchError(router.js:2469)。Catc

  • 我正在尝试使用Angular 6、AngularCLI和MV区域。出于POC的原因,我将其命名为Angular。如果这是一个坏主意,请告诉我,因为也许整个概念是,对我来说,这是一种痛苦。这是我第一次配置它。下面是我的示例,Area有一个主控制器,如下所示: 我的路由配置如下所示: 我在主项目目录中有我的应用程序文件夹,以及angular.json和packages.json等文件。我使用角度 CL

  • 在我的angular项目中,我的路线系统有问题。每次调用< code > reset-password/:token 路由时,我都会收到此错误。< br >每次我调用这个路由时,< code > http://localhost:4200/reset-password?token=token_info,浏览器(google chrome)将我重定向到< code > http://localhos

  • Tango支持4种形式的路由匹配规则 静态路由 tg.Get("/", new(Action)) tg.Get("/static", new(Action))匹配 URL:/ 到 Action结构体的Get函数 匹配 URL:/static 到 Action结构体的Get函数 命名路由 tg.Get("/:name", new(Action)) tg.Get("/(:name)", new(Act

  • 在VueRouter的动态添加路由中,我们在登录页登录成功之后会跳转到某一个页面,这里假设是home页面,但是这个home页面也是动态添加的路由,这就会报错Uncaught (in promise) Error: No match for {"name":"Home","params":{}};那么请问怎样才可以解决这个问题? 在VueRouter的动态添加路由中,我们在登录页登录成功之后会跳转到

  • 注意:本部分是为v1 API编写的,但这些概念也适用于v2 API。它将在未来版本的v2 API中重新描述。 Envoy的路由匹配过程如下: HTTP请求的头域字段 host 或 :authority 与虚拟主机匹配。 按顺序检查虚拟主机中的每个路由表。如果匹配,则使用该路由并且不再匹配路由。 独立地,依次检查虚拟主机中的每个虚拟集群。如果匹配,则使用虚拟群集,不再进一步匹配集群。 返回 上一级