代码之家  ›  专栏  ›  技术社区  ›  Rupesh

不去这个特定的URL。路由器。在AngularJs中导航()

  •  0
  • Rupesh  · 技术社区  · 8 年前

    我正在用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>
        <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>
    

    但问题是当我点击的时候 submit button 或击中 enter ,它会自动刷新页面并显示 Cannot POST /signup .

    因为这是我的 component.ts file

    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');
            }
          });
     }
    

    它正试图去看电影 /signup 路径在post方法中,但在 component.ts 我给的路径是什么 '/user'

    它怎么能自动转到 /报名 ? 以及如何阻止这种情况。

    1 回复  |  直到 8 年前
        1
  •  0
  •   Mark S.    8 年前

    您的表单正在尝试将数据发布到服务器。听起来好像你没有一个服务器可以处理帖子,所以你得到了错误。

    要解决此问题,您需要一个能够处理表单post的服务器。