在加载当前URL的页面后,URL将更改回上一个URL

时间:2017-12-24 06:49:38

标签: angular angular-routing angular-router angular4-forms

首先我的网址是:

 /pages/check_info/add_info

点击该页面中的按钮后,它会加载网址:

/pages/check_info/add_visitor.

问题是在表单加载add_visitor后,URL更改回

/pages/check_info/add_info

add_visitor页仍然存在。 现在当我点击一个链接回add_info的按钮时,按钮不会重定向到任何地方,因为当前的URL是相同的

我用于按钮的代码是

     <div class="btn-area">
      <button md-raised-button class="btn btn-primary btn-rounded"
      type="submit">PLEASE CHECK IN</button>
      <a  routerLink='/pages/check-info/add_info'>BACK</a>
    </div>

我用于路由的代码:

 const routes: Routes = [


   {path: '',redirectTo: 'add_info', pathMatch: 'full'},
  {path: 'add_info', component: AddInfoComponent},
  {path: 'display_info', component: DisplayInfoComponent},
  {path: 'add_visitor', component: AddVisitorComponent},
  {path: 'search_student', component: SearchStudentComponent},
  {path: 'add_student', component: AddStudentComponent},
  {path: 'add_graduate', component: AddGraduateComponent},
  {path: 'check-in', component: AddInfoComponent},

];

2 个答案:

答案 0 :(得分:1)

尝试更改您的链接,如下所示:

<div class="btn-area">
      <button md-raised-button class="btn btn-primary btn-rounded"
      type="submit">PLEASE CHECK IN</button>
      <a  routerLink="['/pages/check-info/add_info']">BACK</a>
    </div>

所以用

改变它
routerLink="['/pages/check-info/add_info']"

希望它可以帮到你!

P.S它总是重定向到add_info原因它是DEFAULT ROUTING ...所以如果它不匹配任何现有的路由它总是重定向到它...

如果您需要像yours / pages / check-info / add_info这样的路由,则必须与子路由进行路由:

所以例如:

 {path: 'pages', component: PageComponent, 
 child[
   { path: 'check-info', component: CheckInfoComponent}
  ]},

等等

答案 1 :(得分:0)

问题不在于视图中的路径或代码补丁。在角度中如果TS中的服务,包或任何内容出现错误,当路径被重定向到包含这些错误的页面时,页面会加载,但网址会更改回以前的URL。