【发布时间】:2018-06-15 13:47:41
【问题描述】:
我在延迟加载 Ionic 3 应用程序“LoginPage et “VideoPage”和“HomePage”中有 3 个不同的页面。 在我的视频页面中有一个复选框,如果单击该复选框,则显示:“在下次开始时显示此视频”。 因此,如果我可以这样说,因为它只是将页面推送到堆栈顶部,那么正常的“路由”是:
"LoginPage ==> "VideoPage" ==> "HomePage"(复选框被点击)
"LoginPage ==> "HomePage"(复选框未点击)
此外,应用程序应该在下次启动时记住选择,即使是稍后一段时间(可能使用存储值)。 同样在我的登录页面中,已经有一个使用存储的键值逻辑,您将在下面的代码中看到:
(我认为如果 videoPage 可以@output 一个事件/变量来告诉登录页面它应该转到主页还是到 videoPage..我正在这样搜索它......) em>
PS:如果您有任何问题或建议,请随时提出
login.html:
<ion-item no-lines>
<ion-label floating>Password</ion-label>
<ion-input type="password"></ion-input>
</ion-item>
<button class="charlotte-button" ion-button icon-left (click)="login()">
<ion-icon class="picto picto-checkbox-active-w"></ion-icon>
Login
</button>
login.ts:
export class LoginPage { public password: string = '';
public key: string = 'username';
constructor(
public navCtrl: NavController, public storage: Storage, private alertCtrl:
AlertController )
login() {
if (this.password === this.key) {
this.storage
.set(this.key, this.password)
.then(val => this.navCtrl.setRoot('LoginPage'));
} else {
let alert = this.alertCtrl.create({
title: 'Wrong password try again !',
buttons: ['Dissmiss']
});
alert.present();
}
}
}
video.html:
<div class="video-container">
<video controls>
<source src="https://archive.org/download/BigBuckBunny_124/Content/big_buck_bunny_720p_
surround.mp4"
poster="https://peach.blender.org/wp-
content/uploads/title_anouncement.jpg?x11217"
type="video/mp4">
</video>
<div class="video-title">Tutorial</div>
</div>
<ion-item no-lines class="checkbox-container">
<ion-label class="diLabel">Show this video at the next start</ion-label>
<ion-checkbox [(ngModel)]="disableVideo"></ion-checkbox>
</ion-item>
video.ts:(这个真的是我正在尝试的,根本没有用)
export class VideoPage {
constructor(public navCtrl: NavController, public navParams: NavParams) {}
checkClicked() {
if(this.disableVideo) {
this.navCtrl.setRoot('VideoPage')
}
else() => {
this.navCtrl.setRoot('Homepage')
}
}
}
主页.html: home.ts: 我在那里放了任何代码,因为它对主题没有帮助(也许我错了告诉我)
【问题讨论】:
标签: angular typescript ionic-framework ionic3 lazy-loading