angular - 按钮上的 RouterLink 不起作用,但在按钮上起作用
问题描述
在我的 app.module 中,我是延迟加载模块。
{
path: 'user-dashboard',
loadChildren: () =>
import('./features/user-dashboard/user-dashboard.module').then(
(m) => m.UserDashboardModule
),
}, {
path: 'register',
loadChildren: () =>
import('./features/register/register.module').then(
(m) => m.RegisterModule
),
},
所以我的项目应用程序分为多个模块,如图所示。点击查看模块结构图
下面的代码在 checkout.html 里面,它是 register 模块中的一个页面。我想去用户仪表板路线
<button class="btn btn-primary form-btn payment-btn" [routerLink]="['/user-dashboard']">
Confirm & Pay
</button>
在我的 user-dashboard-routing.module.ts 中,这是描述的路由
const routes: Routes = [
{
path: '',
component: UserDashboardComponent,
},
];
现在,当我单击此按钮时,它会转到所需的路线,但会返回相同的结帐页面。它不会停留在用户仪表板中。此外,如果我用 替换按钮<a>
,它将起作用。
解决方案
对于按钮,您可以使用(click)="someMethod()"
someMethod()
{
this.router.navigate([yourUrl])
}
推荐阅读
- java - 枢轴索引和平衡分区(Java)
- ios - NativeScript iOS Delegate Transpilation 错误(找不到变量:__metadata)
- jquery - 如何在 jQuery 手风琴中使用更少的 jQuery
- pug - 在对象上使用 Pug 进行迭代
- javascript - 用于检查会话是否处于活动状态的 JavaScript 代码
- python - 删除匹配值后的所有列
- amazon-web-services - SSH 端口上的 AWS 负载均衡器 Git 克隆错误
- ios - 从 SFSpeechRecognizer 停止语音输入后处理文本
- java - 使用 Java(客户端证书 PFX 文件)进行相互身份验证且无法访问环境
- java - 在一项活动中显示数据取决于其他活动列表视图中的选择 - 如何