如何解决路由器从其模板链接到同一组件不起作用
在 AnswerspageComponent 组件中,这是我的
ngOnInit() {
this.my_id =true;
this.user = JSON.parse(localStorage.getItem('currentUser'));
this.selection = this.user.username;
this.status = this.user.designation;
this.hosp = this.user.hospitalname;
this.last = this.user.lastname;
this.route.params.subscribe(params=>{
console.log('I am on init');
this.id = params['id'];
this.title=params['question'];
console.log(this.id,this.title);
})
console.log('fine till here');
this.get_details();
}
这是app.routing.module.ts中组件的路由
{path: 'posts/:id/:question',component: AnswerspageComponent,canActivate: [AuthGuardService]},
在 Answerspage 模板中,我有一个类似这样的不同问题的路由器链接。
<a [routerLink]="['/posts/'+data2['question_id']+'/'+data2['question']]" ><p class="side-ques">{{ data2['question']}}</p></a>
这里 data2 包含一些不同问题的数据。
单击浏览器中的链接 url 正在发生变化。
但是在 ngOnInit 中只有这部分被执行。
this.route.params.subscribe(params=>{
console.log('I am on init');
this.id = params['id'];
this.title=params['question'];
console.log(this.id,this.title);
})
这是项目的版本。
$ng --version
Angular CLI: 8.3.26
Node: 10.23.0
OS: linux x64
Angular: 8.0.3
... common,compiler,compiler-cli,core,forms
... language-service,platform-browser,platform-browser-dynamic
... router
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.800.6
@angular-devkit/build-angular 0.800.6
@angular-devkit/build-optimizer 0.800.6
@angular-devkit/build-webpack 0.800.6
@angular-devkit/core 8.0.6
@angular-devkit/schematics 8.3.26
@angular/animations 8.2.14
@angular/cdk 8.2.3
@angular/cli 8.3.26
@angular/fire 5.4.2
@angular/flex-layout 8.0.0-beta.27
@angular/http 7.2.16
@angular/material 8.2.3
@angular/pwa 0.901.12
@angular/service-worker 9.1.9
@ngtools/webpack 8.0.6
@schematics/angular 8.3.26
@schematics/update 0.803.26
rxjs 6.5.5
typescript 3.4.5
webpack 4.30.0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。