使用navigateForward angular 7传递参数
我试图在路由上传递一个参数,但它到达时是未定义的。 在登录屏幕上,我通过NavController选项卡调用,但在ActivateRoute选项卡中,路由到达时未定义使用navigateForward angular 7传递参数,angular,Angular,我试图在路由上传递一个参数,但它到达时是未定义的。 在登录屏幕上,我通过NavController选项卡调用,但在ActivateRoute选项卡中,路由到达时未定义 export class TabsPage { logado = false; id=0; constructor(public navCtrl: NavController, private route: ActivatedRoute) { } ngOnInit() { this.rou
export class TabsPage {
logado = false;
id=0;
constructor(public navCtrl: NavController, private route: ActivatedRoute)
{
}
ngOnInit() {
this.route.queryParams.subscribe(params => {
this.id = params["id"];
});
if(this.id == undefined || this.id == null || this.id == NaN || this.id < 1){
this.navCtrl.navigateForward('/login');
this.logado = false;
}else{
this.logado = true;
this.navCtrl.navigateForward('/home');
}
}
}
导出类选项卡页{
logado=false;
id=0;
构造函数(公共navCtrl:NavController,专用路由:ActivatedRoute)
{
}
恩戈尼尼特(){
this.route.queryParams.subscribe(参数=>{
this.id=params[“id”];
});
if(this.id==undefined | | this.id==null | | | this.id==NaN | | this.id<1){
this.navCtrl.navigateForward('/login');
this.logado=false;
}否则{
this.logado=true;
this.navCtrl.navigateForward('/home');
}
}
}
将您的逻辑移动到queryParams订阅中,使其仅在设置id后运行:
ngOnInit() {
this.route.queryParams.subscribe(params => {
this.id = params["id"];
if (this.id == undefined || this.id == null || this.id == NaN || this.id < 1) {
this.navCtrl.navigateForward('/login');
this.logado = false;
} else {
this.logado = true;
this.navCtrl.navigateForward('/home');
}
});
}
ngOnInit(){
this.route.queryParams.subscribe(参数=>{
this.id=params[“id”];
if(this.id==undefined | | this.id==null | | | this.id==NaN | | this.id<1){
this.navCtrl.navigateForward('/login');
this.logado=false;
}否则{
this.logado=true;
this.navCtrl.navigateForward('/home');
}
});
}
我正在尝试将整个代码粘贴到此处,但无法获取itEssaéchamada da页面。如果(res.json()!=null){let navigationExtras:navigationExtras={queryParams:{id:res.json()}}this.id=parseInt(res.json());this.router.navigate,则未定义的e-eu-consigo-descobrir-porque-ate-enta-sera-passada-sempre-com-valor>>(['/tabs'],navigationExtras);