【发布时间】:2018-07-01 01:59:24
【问题描述】:
我正在使用 Angular 和 Ionic 3 构建游戏,由于游戏有很多页面/视图,我想避免在我有按钮的页面的 ts 文件中编写相同的代码。
我的问题如下,是否可以创建一个“可重用”按钮将当前视图移动到另一个视图?我所说的“可重用”是在 app.ts 中声明按钮单击功能,并从 HTML 中动态更改目标页面。
到目前为止我做了什么:
在 home.html 中
<button ion-button color="light" (click)="moveToPage(gameSettings)">One Player</button>
注意: 我想去的页面类是“gameSetting”,这是我在 /pages/game-settings/ 中的项目的一部分
在 app.ts 中
constructor(public navCtrl: NavController, public navParams: NavParams) {
moveToPage(pageName: String)
{
this.navCtrl.push(pageName);
}
}
很遗憾,这不起作用!发生的情况是 HTML 将“pageName”作为具有undefined 类型的变量传递,即它会引发错误。 Ionic 的 navCtrl 页面仅通过 this.navCtrl.push() 函数中的页面名称来解释如何移动到另一个页面。 https://ionicframework.com/docs/api/navigation/NavController/
我们将不胜感激有关此行为的任何帮助。
【问题讨论】:
-
HTML 中的 pageName 变量是什么?我的意思是,你在哪里给它一个价值?
-
公平点,我现在将更新 HTML 文件以消除混乱。我想要做的是在 HTML 中传递我想去的页面的名称。
-
@GianlucaParis,您之前的回答是正确的,在尝试完成 plunker 时,我修复了代码中的错字,所以您确实回答了我的问题。欢迎在下方添加您的答案
-
谢谢,我又添加了我的答案:)
标签: javascript angular ionic3