ionic4--下拉刷新(refresher)

/----------------------------------------------说明区--------------------------------------------------/

今天学习下下拉刷新,我们只关注HTML和其中的ionRefresh的方法体,说白了下拉刷新其实就是将本页的所有的数据集合重新获取下,为了保证更快有的时候我们只刷新部分,但是下拉刷新是将所有的数据在不返回的情况下进行正常走一遍,请看代码区:




/----------------------------------------------代码区--------------------------------------------------/

  1. 参照HTML
<ion-refresher slot="fixed" (ionRefresh)="doRefresh($event)">
    <ion-refresher-content 
    	pullingIcon="arrow-dropdown" 
    	pullingText="下拉刷新页面" 
    	refreshingSpinner="circles"
      	refreshingText="加载中...">
    </ion-refresher-content>
  </ion-refresher>

<!-- 
  ionRefresh: 是方法区
  pullingIcon:开始下拉时显示的静态图标
  pullingText:开始下拉时要显示的文本
  refreshingSpinner:一个动画SVG微调器,显示刷新开始时
  refreshingText:执行刷新时要显示的文本
  
参照:https://ionicframework.com/docs/api/refresher-content
-->

  1. 参照ts代码
  doRefresh(event: any) {

    this.ngOnInit();  // 调用的方法,这个初始化的内容,所有肯定有页面的数据,也可以直接写个方法:this.gotoSignIn()
    setTimeout(() => {
      event.target.complete();  // 这个是我们进行执行方法必须的
    }, 1000);  // 1000表示执行的时间在1s内,如果执行的慢的话这个需要在增加
  }



/----------------------------------------------注意事项--------------------------------------------------/

  1. 我们需要在每个显示的数组前面将此数组进行置空才行,例如以下:
 this.courses = res.json().data;    // 将后端传来数据存入数组
        console.log('cources', this.courses);  // 打印到我们F12页面上
        // tslint:disable-next-line:forin      // 此注释是为了让tslint审查组件不审查此代码
        this.practice = [];                    // 让我们的post后的数组清空
        for (const k in this.courses) {
        this.practice.push(k);                 // 我们将此数据post后存入新的数组中备用,所以我们需要清空practice即可。
       }

目的是防止下拉刷新是增加数据而不是刷新。




/----------------------------------------------总结区--------------------------------------------------/

小结:一般的情况下,将此代码直接复制到我们需要的下拉刷新的地方即可,因为我们这个HTML页不需要修改(当然可以自行更换好看的下拉图标),ts代码执行的是ngOnInit(初始化的内容)一般不用换,可以自行更换页面需要数据的方法即可。
参考页面的美观:https://ionicframework.com/docs/api/refresher

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值