angular - 如何在不使用 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 页面的情况下从组件正确导航到其他路由?
解决方案
解决方案是添加:
return false
在里面
saveAndGoToDetails()
处理函数。该问题是由 Angular Material 表单的工作方式引起的。如果在其中放置一个按钮。即使它不是提交按钮,Angular Material 也会将其视为提交。
推荐阅读
- c - 在自己的 malloc 函数中调用 printf 导致分段错误
- android-studio - 在 android studio 中创建一个类似于 WhatsApp 弹出通知的弹出窗口
- php - 如何让 yii 1 post 方法与邮递员一起工作
- javascript - React js 有条件地将类渲染到特定的映射项
- python - 如何从文本文件中删除元素末尾的分号到列表
- algorithm - 在网格排序算法中,行排序和列排序步骤是交错的。[修改剪切排序]
- javascript - 成功条带结帐后调用端点
- video - WebRTC 中的数据通道和远程流
- reactjs - 在 reactjs 中使用多个 reducer
- javascript - 在 JS 类中,AJAX 成功回调不断返回 Uncaught TypeError 但该方法已定义,我不知道发生了什么