Ionic 3,一个组件使用多个页面 html

Ionic 3, using multiple pages html for one component

我正在使用 Ionic 3,我有一个问题。

html的2页是否可以使用相同的'component.ts'?

例如,如果我有 2 个页面: 第一页显示所有用户, 第二页显示用户的详细信息 和 1 个组件 UserPage。

对于 Ionic 1,我可以在 html 的多个页面中使用一个控制器,但在 Ionic 3 中我不知道这是否可行。如果可能的话,如何在点击时调用页面 html?例如,对于我们这样做的组件:

this.navCtrl.setRoot(TabsPage);

对于练习,以这种方式使用它还是使用正常方式更好(生成所有的 ionic g page XXX??) 提前致谢。

我建议您为详细信息创建一个单独的页面,即 user-details。在您的列表页面中,我们将其命名为 users,您可以这样做

this.navCtrl.push('user-details', { id: user.id });

这将向 user-details 发送一个 ID 参数,您可以通过在 user-details.ts

中执行以下操作来获取该参数
userID: number;

constructor(public navParams: NavParams){
// ...
}

ionViewDidLoad() {
    this.userID = this.navParams.get('id');
}

当然,如果你想发送一个完整的用户对象,你只需将对象编辑成类似

{ user: user }

并在

访问它
this.navParams.get('user')

使用 this.navCtrl.setRoot() 进行导航是不好的做法。相反,您应该使用 this.navCtrl.push()this.navCtrl().pop().