单击routerLink时,Angular不会重新加载组件
调用click event时无法重新加载组件。我尝试了以下代码单击routerLink时,Angular不会重新加载组件,angular,angular6,angular2-routing,Angular,Angular6,Angular2 Routing,调用click event时无法重新加载组件。我尝试了以下代码 (dealCode,periodName) => { let url:any='/valuation;dealcode=J9PPR;fundPeriod=2019Q3;useDefault=true'; this.router.navigateByUrl('/dummy', { skipLocationChange: true }); setTimeout(() =>this.router.n
(dealCode,periodName) => {
let url:any='/valuation;dealcode=J9PPR;fundPeriod=2019Q3;useDefault=true';
this.router.navigateByUrl('/dummy', { skipLocationChange: true });
setTimeout(() =>this.router.navigate([url]));
}
Angular正在进行url编码,你必须告诉他相信你
import { DomSanitizer } from '@angular/platform-browser';
constructor(
private _sanitzer: DomSanitizer
) { }
你的职能
(dealCode,periodName) => {
let url:any='/valuation;dealcode=J9PPR;fundPeriod=2019Q3;useDefault=true';
this.router.navigateByUrl('/dummy', { skipLocationChange: true });
const safeUrl = this._sanitzer.bypassSecurityTrustUrl(url);
setTimeout(() =>this.router.navigate([safeUrl]));
}
这是本机功能。Angular不会重新加载组件,除非为其提供的数据发生更改(
@Input
)或uri/route参数更新为新值。