我正在使用Angular和Ionic 3构建游戏,因为游戏中有很多页面/视图,我想要消除在我有按钮的页面的ts文件中编写相同的代码。
我的问题如下,是否可以创建一个' 可重复使用'将当前视图移动到另一个视图的按钮?我的意思是'可重复使用'是在app.ts中声明按钮单击功能,并从HTML动态更改目标页面。
到目前为止我做了什么:
home.html中的
<button ion-button color="light" (click)="moveToPage(gameSettings)">One Player</button>
注意: 我要去的页面类是&#34; gameSetting&#34;这是我在/ pages / game-settings /
项目中的一部分 在app.ts中
constructor(public navCtrl: NavController, public navParams: NavParams) {
moveToPage(pageName: String)
{
this.navCtrl.push(pageName);
}
}
不幸的是,这不起作用!会发生什么是HTML传递&#39; pageName&#39;作为具有undefined
类型的变量,即它会引发错误。 Ionic的navCtrl页面仅解释了如何通过this.navCtrl.push()函数中的页面名称移动到另一页面。 https://ionicframework.com/docs/api/navigation/NavController/
非常感谢有关此行为的任何帮助。
答案 0 :(得分:1)
您只需将(click)="moveToPage(gameSettings)"
更改为(click)="moveToPage('gameSettings')"
即可。只是错过了''