拉动刷新奇怪的行为
Pull to refresh strange behaviour
我有以下代码
<div id="fincasMaestro" class="page-layout fullwidth page-layout-app p-16" fxFlex fxLayout="column" [@animate]="{value:'*',params:{delay:'200ms',y:'100%'}}">
<!-- HEADER -->
<div id="loader" class="h2 text-center mt-4">Parcelas</div>
<mat-tab-group animationDuration="0ms">
<mat-tab label="Activas"> <fincasactivas style="height: 100%"></fincasactivas> </mat-tab>
<mat-tab label="Finalizadas"> <archivedfincas style="height: 100%"> </archivedfincas> </mat-tab>
</mat-tab-group>
并在 component.ts 内部初始化拉动刷新组件
const ptr = PullToRefresh.init({
mainElement: '#loader',
instructionsPullToRefresh: 'Arrastre hacia abajo para refrescar',
instructionsReleaseToRefresh: 'Suelte para refrescar',
instructionsRefreshing: 'Refrescando la página',
onRefresh() {
window.location.reload();
}
});
如果我向上滑动,效果很好,但我有一个问题,我的 mat-tabs 中的组件是包含太多项目的列表,无法适应屏幕,所以我有一个滚动条,如果我转到底部页面,我尝试向上滚动页面刷新,即使我在底部
知道为什么会这样吗? -
以防万一,我使用的是 Angular7+ 和 cordova。
测试于 Android
编辑:我找到了答案
我找到了答案
mainElement: '#loader',
shouldPullToRefresh: () => {return document.getElementById('fincas').scrollTop === 0},
onRefresh: () => {
//onRefresh code
}
});
使用 shouldPullToRefresh 和 属性 scrollTop 我们只能在滚动条在顶部时刷新,这样我们就可以从底部移动而不会误刷新
我有以下代码
<div id="fincasMaestro" class="page-layout fullwidth page-layout-app p-16" fxFlex fxLayout="column" [@animate]="{value:'*',params:{delay:'200ms',y:'100%'}}">
<!-- HEADER -->
<div id="loader" class="h2 text-center mt-4">Parcelas</div>
<mat-tab-group animationDuration="0ms">
<mat-tab label="Activas"> <fincasactivas style="height: 100%"></fincasactivas> </mat-tab>
<mat-tab label="Finalizadas"> <archivedfincas style="height: 100%"> </archivedfincas> </mat-tab>
</mat-tab-group>
并在 component.ts 内部初始化拉动刷新组件
const ptr = PullToRefresh.init({
mainElement: '#loader',
instructionsPullToRefresh: 'Arrastre hacia abajo para refrescar',
instructionsReleaseToRefresh: 'Suelte para refrescar',
instructionsRefreshing: 'Refrescando la página',
onRefresh() {
window.location.reload();
}
});
如果我向上滑动,效果很好,但我有一个问题,我的 mat-tabs 中的组件是包含太多项目的列表,无法适应屏幕,所以我有一个滚动条,如果我转到底部页面,我尝试向上滚动页面刷新,即使我在底部
知道为什么会这样吗? -
以防万一,我使用的是 Angular7+ 和 cordova。
测试于 Android
编辑:我找到了答案
我找到了答案
mainElement: '#loader',
shouldPullToRefresh: () => {return document.getElementById('fincas').scrollTop === 0},
onRefresh: () => {
//onRefresh code
}
});
使用 shouldPullToRefresh 和 属性 scrollTop 我们只能在滚动条在顶部时刷新,这样我们就可以从底部移动而不会误刷新