我有一个含有离子含量的popover。该内容在* ngFor上复制,离子含量的最大高度为400px。添加新内容时(从用户搜索),滚动在iOS上无法正常工作。见下文:
我的计算机上的Chrome和Safari(正常工作):
在iOS上,它没有正确设置滚动区域,相同的代码。您将看到的是我尝试滚动查看列表的底部,但每次都会反弹,就像我在内容的底部一样:
我也尝试将它放在离子列表中,但我并不是真的想这样做。它也没用。
这是HTML(可滚动验证为true,get-user-location类只将最大高度设置为400px):
<ion-content [scrollY]="scrollable" class="get-user-location">
<form [formGroup]="form">
<h5 padding no-margin *ngIf="message">{{ message }}</h5>
<ion-item>
<ion-input
color="primary"
(keyup.enter)="searchClicked()"
formControlName="search"
></ion-input>
<ion-button (click)="searchClicked()" fill="clear"
><ion-icon onclick="searchClicked()" name="search" slot="icon-only"></ion-icon
></ion-button>
</ion-item>
<ion-item *ngIf="searchStatus">
{{ searchStatus }}
</ion-item>
<ion-radio-group formControlName="radio" (ionSelect)="radioSelected($event)">
<ion-item *ngFor="let searchResult of searchResults; let i = index">
<ion-radio mode="md" value="{{ i }}" margin-end></ion-radio>
<ion-label>{{ searchResult!.name }}</ion-label>
</ion-item>
<ion-item>
<ion-radio mode="md" value="city" margin-end></ion-radio>
<ion-label>Default city listed below</ion-label>
</ion-item>
</ion-radio-group>
<ion-item>
<ion-select
okText="Okay"
cancelText="Dismiss"
formControlName="city"
(ionChange)="cityChanged($event)"
>
<ion-select-option *ngFor="let city of cities" [value]="city.id">
{{ city.name }}
</ion-select-option>
</ion-select>
</ion-item>
<ion-button
*ngIf="showSubmit"
(click)="dismiss()"
[disabled]="!form.valid"
fill="clear"
class="button-padding-start large"
margin
>Submit</ion-button
>
</form>
</ion-content>
尝试
<ion-content no-bounce has-bouncing="false">
...
</ion-content>
这是一个错误:
https://github.com/ionic-team/ionic/issues/16910
删除ion-content并将其添加到组件的scss中:
.backdrop-no-scroll ion-content {
--overflow: hidden;
}