Html 不转到AngularJs中的特定URL this.router.navigate()
我正在用angularJS制作一个注册表,我使用引导模板进行设计 这是我的表单,表单页面的路径是Html 不转到AngularJs中的特定URL this.router.navigate(),html,css,angularjs,bootstrap-4,Html,Css,Angularjs,Bootstrap 4,我正在用angularJS制作一个注册表,我使用引导模板进行设计 这是我的表单,表单页面的路径是http://localhost:4200/signup <form method="post" (submit)='register(username.value,email.value,password.value)'> <div class="form-group"> <label for="name">Full name</label>
http://localhost:4200/signup
<form method="post" (submit)='register(username.value,email.value,password.value)'>
<div class="form-group">
<label for="name">Full name</label>
<input type="text" id="name" #username class="form-control" placeholder="Enter your name">
</div>
<div class="form-group">
<label for="remail">Email address</label>
<input type="email" id="remail" #email class="form-control" placeholder="Enter email">
</div>
<div class="form-group">
<label for="rpassword">Password</label>
<input type="password" #password class="form-control" id="rpassword" placeholder="Password">
</div>
<button type="submit" class="btn btn-primary">Register</button>
</form>
它试图在post方法中转到/signup
路径,但在组件.ts
文件中,我给出了'/user'
它如何自动转到
/signup
?以及如何停止该操作。您的表单正在尝试将数据发布到服务器。听起来好像你没有一个服务器可以处理帖子,所以你得到了错误
要解决此问题,您需要一个能够处理表单发布的服务器。我有服务器,但这里我没有给出服务器的路径。然后您需要在表单标签中添加服务器的路径,并使用
它应该是(ngSubmit)。看看问题是不是(提交)我能够提交数据库中的数据,但不知道为什么它不能导航到下一页。registerUser函数在做什么?它是否返回成功?您的用户服务函数this.userService.registerUser()是什么样子的?您看过响应了吗?它是否有success属性?是的,我检查了,结果显示success:true
register(name,email,password) {
this.userService.registerUser(name, email, password).subscribe(data => {
if (data.success) {
console.log('reaches');
this.router.navigate(['user']);
} else {
console.log('error');
}
});
}