fix(refresher): work properly in modal by waiting for content to be ready (#22390)

resolves #22256
This commit is contained in:
Hans Krywalsky
2020-11-02 19:14:15 +01:00
committed by GitHub
parent 2fea36fc98
commit 91d041485c

View File

@ -371,8 +371,6 @@ export class Refresher implements ComponentInterface {
const pullingSpinner = this.el.querySelector('ion-refresher-content .refresher-pulling ion-spinner') as HTMLIonSpinnerElement; const pullingSpinner = this.el.querySelector('ion-refresher-content .refresher-pulling ion-spinner') as HTMLIonSpinnerElement;
const refreshingSpinner = this.el.querySelector('ion-refresher-content .refresher-refreshing ion-spinner') as HTMLIonSpinnerElement; const refreshingSpinner = this.el.querySelector('ion-refresher-content .refresher-refreshing ion-spinner') as HTMLIonSpinnerElement;
await contentEl.componentOnReady();
if (getIonMode(this) === 'ios') { if (getIonMode(this) === 'ios') {
this.setupiOSNativeRefresher(pullingSpinner, refreshingSpinner); this.setupiOSNativeRefresher(pullingSpinner, refreshingSpinner);
} else { } else {
@ -396,6 +394,8 @@ export class Refresher implements ComponentInterface {
return; return;
} }
await contentEl.componentOnReady();
this.scrollEl = await contentEl.getScrollElement(); this.scrollEl = await contentEl.getScrollElement();
this.backgroundContentEl = getElementRoot(contentEl).querySelector('#background-content') as HTMLElement; this.backgroundContentEl = getElementRoot(contentEl).querySelector('#background-content') as HTMLElement;