Angular 5 路由正在重新加载整个页面

标签 angular angular5

我在使用 Angular 5 时遇到问题。 我使用了带有 Angular cli 的全新安装:ng new Test --routing,但它似乎重新加载了整个页面,而不仅仅是这一部分。 有人遇到过同样的问题吗?

路由模块

import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import {GalleryComponent} from './gallery/gallery.component';
import {MainComponent} from './main/main.component';

const routes: Routes = [
    {
        path: '',
        component: MainComponent
    },
    {
        path: 'gallery',
        component: GalleryComponent
    }
];

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

导航代码

<ul class="navbar-nav navbar-left">
  <li class="nav-item">
        <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
   </li>
   <li class="nav-item">
       <a class="nav-link" href="/gallery">Galerie</a>
   </li>
</ul>

最佳答案

您应该尝试使用 routerLink而不是 href <a> 中的属性标签。

<ul class="navbar-nav navbar-left">
  <li class="nav-item">
        <a class="nav-link" routerLink="/">Home <span class="sr-only">(current)</span></a>
   </li>
   <li class="nav-item">
       <a class="nav-link" routerLink="/gallery">Galerie</a>
   </li>
</ul>

一个标准href将告诉浏览器导航到给定的 URL。但你想要的是告诉 Angular 导航到 URL。

关于 Angular 5 路由正在重新加载整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49095021/

相关文章:

javascript - Ionic 4 - 使用 Jquery 创建的按钮不调用事件

angular - 如何处理 session

Angular5 http 最佳实践

typescript - Angular 5 Modal以编程方式关闭

angular - 在 Angular 6 中滚动结束时禁用按钮

html - Angular 5 按钮提交按回车键

angular - 如何重新初始化/重新触发使用动画系统制作的动画?

css - PrimeNg Datatable 样式单元格

javascript - 如何在 Angular 7 中解析 json?

electron - 在 Electron 应用程序中将每个路由器链接作为新选项卡打开