繁体   English   中英

在Angular 2中重置或重新加载同一页面

[英]reset or reload the same page in Angular 2

我试图通过使用router.navigate重新加载Angular 2中的相同URL,但它无法正常工作。

网址: http:// localhost:3000 / page1

场景:我在http:// localhost:3000 / landing上,点击按钮,会传递应该重新加载页面的路由参数。

例:

假设用户在page1(编辑表单)并且url读取为localhost:3000/page1并且将有一个按钮创建新,在点击按钮时使用路由参数

let navigationExtras: NavigationExtras = { queryParams: { "refresh": "Y" } }; 
this.router.navigate(['page1'], navigationExtras);

仅在创建组件时调用ngOnInit。 当您导航到同一页面(具有不同的url参数)时,不会调用ngOnInit方法。 您应该使用ActivatedRoute Params Observable

import { ActivatedRoute } from '@angular/router';

export class MyComponent implements OnInit {
  constructor(private _activatedRoute: ActivatedRoute){}

  ngOnInit(){
    this._activatedRoute.params.subscribe(
      params => {
        // this is called everytime the url changes
      }
   }
}

你只需要调用window.location.reload();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM