Javascript 如何运行构造函数或ngOnInit两次或多次

Javascript 如何运行构造函数或ngOnInit两次或多次,javascript,angular,ionic-framework,angular-ui-router,ionic-native,Javascript,Angular,Ionic Framework,Angular Ui Router,Ionic Native,我的情况如下: 我有一个应用程序,其中有几个屏幕,其中一个屏幕上有一个文章列表,当单击某个项目时,它会将我带到另一个屏幕,其中显示该项目的详细信息,这是路线代码: this.navCtrl.navigateForward('/main/item-detalle', { animated: true, queryParams: {item} }); 在详细信息屏幕中,我有一个删除项目的按钮,当项目被删除时,用户将重定向回项目列表屏幕: this._route.navigate(['/main/h

我的情况如下: 我有一个应用程序,其中有几个屏幕,其中一个屏幕上有一个文章列表,当单击某个项目时,它会将我带到另一个屏幕,其中显示该项目的详细信息,这是路线代码:

this.navCtrl.navigateForward('/main/item-detalle', { animated: true, queryParams: {item} });
在详细信息屏幕中,我有一个删除项目的按钮,当项目被删除时,用户将重定向回项目列表屏幕:

this._route.navigate(['/main/home/items'], { replaceUrl: true, queryParams: { itemId: id } });
在这段代码中,我通过参数向您发送已删除项目的ID,以便能够将其从“项目”页面中删除

但是我无法读取通过URL中的参数发送的内容,因为构造函数和ngOnInit没有重新运行,因为items页面没有被破坏

这样做的目的不是使用replaceUrl:true销毁items页面


应用程序使用带角度的离子。

尝试此解决方案以访问路由中的参数

import { ActivatedRoute, Params, Router } from '@angular/router';

constructor(private activatedRoute: ActivatedRoute) {}

或者,您可以使用在组件之间共享信息。

尝试此解决方案以访问路由中的参数

import { ActivatedRoute, Params, Router } from '@angular/router';

constructor(private activatedRoute: ActivatedRoute) {}

或者,您可以使用在组件之间共享信息。

这对我来说很有效,请使用:`` This。activatedRoute.queryParams.subscribe res=>{}``坦克!这对我有用,用:``这个。activatedRoute.queryParams.subscribe res=>{}``坦克!