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()
.
我正在使用 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()
.