在我的主页上,我有一个链接路由到带有登录按钮的登录页面,但单击它后,不会运行任何功能,也不会显示错误代码。我确保该功能具有相同的名称,并且检查了脚本文件确保没有任何重叠。
详情-
**Button in html -**
<button class="btn btn-primary w-100 py-2" type="button" (click)="onLogin()">Sign in</button>
**compnent.ts** -
@Component({
selector: 'app-login-page',
standalone: true,
imports: [FormsModule],
templateUrl: './login-page.component.html',
styleUrl: './login-page.component.css'
})
export class LoginPageComponent {
loginObj: any ={
'username': '',
'password': ''
}
constructor(private router: Router) { }
onLogin(){
console.log('Login Clicked');
alert('Login Clicked');
}
}
我尝试了不同的事件侦听器,并检查事件侦听是否在其他页面上起作用(它不起作用),以及在控制台中查看是否出现与按钮相关的任何错误。
Angular 在使用 ngserve 时不会弹出任何错误。控制台也没有显示我认为相关的错误。
我真的需要帮助:(我不明白 如果需要更多代码片段,我将提供
我确实在四月份看到过一篇类似的帖子谈论这个问题,但除了调试之外没有给出任何错误的答案:(
没关系,伙计们。我发现了这个问题。我不确定它是如何工作的,但这是我解决问题的方法。基本上,在我的应用程序外部的主 index.html 文件中,我有 HTML 的基本样板,然后是应用程序根目录。好吧,事实证明我在 app.component.html 中也有 HTML 样板,导致了某种冲突。
所以,之前,我有两次 HTML 样板:一次在我的主 HTML 文件中,然后再次在我的 app.component.html 中,如下所示。
之前-
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body class="main_body">
<app-header></app-header>
<router-outlet></router-outlet>
</body>
</html>
之后-
<app-header></app-header>
<router-outlet></router-outlet>
这允许所有事件监听工作
答案:当我在主 index.html 中已经有样板文件时,我在 app.component.html 中有样板文件,从而产生了冲突。