首页 > 解决方案 > 如何在不使用 Angular 7 中的 Router.navigate 重新加载的情况下转到其他页面?

问题描述

我在组件模板中有一个按钮。单击时使用以下代码调用组件方法:

saveAndGoToDetails()
{
     // TODO: Here will be saving
     this.router.navigate(['/details/1029']);
}

它是从具有此部分的组件中调用的:

 <button mat-flat-button color="primary" (click)="saveAndGoToDetails()">Save and go to details</button>

它应该做的是导航到这条路线而不重新加载整个应用程序。尽管如此,它在访问 URL 时会重新加载整个页面。

如何在不重新加载 Angular 7 页面的情况下从组件正确导航到其他路由?

标签: angular

解决方案


解决方案是添加:

return false

在里面

saveAndGoToDetails()

处理函数。该问题是由 Angular Material 表单的工作方式引起的。如果在其中放置一个按钮。即使它不是提交按钮,Angular Material 也会将其视为提交。


推荐阅读