angular - 单击时创建一个新的离子载玻片
问题描述
我正在创建一个用于提交药物信息的多步骤表单。
以前它是一个大表格,但我希望它看起来不那么凌乱和长。我正在使用离子幻灯片对表单进行建模,并且我希望能够使其中一张幻灯片仅在单击按钮时才可用。我怎样才能做到这一点?到目前为止,这是我的代码:
<ion-content>
<ion-slides>
<ion-slide>
<h4>Tell us about your medication</h4>
</ion-slide>
<ion-slide>
<form id="addMed" #form="ngForm" (ngSubmit)="addMed(form)">
```
some code
```
</form>
</ion-slide>
<ion-slide>
<form>
```
some code
```
<ion-button expand="full" (click)="toggleRX()">This is a prescription medication</ion-button>
<div *ngIf=isRX>
<h4>Prescription Information</h4>
```
some code
```
</div>
</form>
</ion-slide>
</ion-slides>
我希望 *ngIf div 是它自己的幻灯片,但只有在按下“这是处方药”按钮时才能访问。有没有办法做到这一点?
(如果有人有任何资源,我也想了解更多关于离子幻灯片的信息,但这只是一个奖励)
解决方案
我们可以锁定滑动到下一张幻灯片,除非按下我们指定的按钮,按下后,我们将滑动到我们想要的任何幻灯片# - 一旦幻灯片转换,我们再次锁定滑动能力(这样用户就不会'不要自己去看——他们去另一张幻灯片的唯一方法是只通过一个按钮)
在此处查看 stackblitz 演示中的 Home 选项卡
home.ts内容如下:
import { Component, ViewChild } from '@angular/core';
import { NavController } from 'ionic-angular';
import { Slides } from 'ionic-angular';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
@ViewChild(Slides) slides: Slides;
slideOpts;
constructor(public navCtrl: NavController) {
this.slideOpts = {
effect: 'flip'
};
}
ionViewDidEnter() {
//lock manual swipe for main slider
this.slides.lockSwipeToNext(true);
this.slides.lockSwipeToPrev(true);
}
slideToSlide() {
if (this.slides.getActiveIndex() + 1 === this.slides.length()) {
this.slides.slideTo(0);
} else {
this.slides.lockSwipeToNext(false);
this.slides.slideTo(this.slides.getActiveIndex() + 1);
this.slides.lockSwipeToNext(true);
}
}
}
home.html是:
<ion-header>
<ion-navbar>
<ion-title>Home</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<ion-slides>
<ion-slide>
<h4>This is the first slide</h4>
<button type="button" (click)="slideToSlide()">Next</button>
</ion-slide>
<ion-slide>
<h4>This is the second slide</h4>
<button type="button" (click)="slideToSlide()">Next</button>
</ion-slide>
<ion-slide>
<h4>This is the third slide</h4>
<button type="button" (click)="slideToSlide()">Next</button>
</ion-slide>
</ion-slides>
</ion-content>
推荐阅读
- c# - 使用 WNetUseConnection 时如何在客户端计算机上显示凭据对话框?
- c# - C#如何获取所有XML值
- appian - 在字典中查找关联值
- artificial-intelligence - 极小极大算法:转弯顺序重要吗?
- c# - 由于错误代码,程序将无法运行 * 程序不包含适合入口点的静态“Main”方法
- algorithm - 确定循环具有乘法因子时的时间复杂度
- java - Android - 如何使用 Volley 库将多维 JSON 结果处理为微调器
- python - pandas to_sql 中的 dtype 引发 ValueError
- oracle - 在 Oracle 的参数过程中传递 1000 条表记录
- python - python - 将多个字符串日期时间格式转换为特定的日期格式