• ionic 2 起航 控件的使用 客户列表场景(四)


      接下来,我们的客户列表要怎么刷新数据呢?

      我们不会安卓开发,不会ios开发,没关系,我们还有ionic 2。ionic 2的控件 Ion-refresher 轻松帮我们搞掂。

      

      <!--下拉刷新-->
      <ion-refresher (refresh)="doRefresh($event)">
        <ion-refresher-content 
        pullingIcon="arrow-dropdown" 
        pullingText="Pull to refresh" 
        refreshingSpinner="circles" 
        refreshingText="正在刷新数据...">
        </ion-refresher-content>
      </ion-refresher>

          1.ion-refresher控件

            (refresh)="doRefresh($event)"  ,当刷新的时候触发的后台的doRefresh方法。($event)是一个事件参数

            pullingIcon="arrow-dropdown"  

       pullingText="Pull to refresh"

       refreshingSpinner="circles"

       refreshingText="正在刷新数据...",刷新的时候展示的文字

                控件的事件如下:

    • refresh   刷新事件。不要忘记在异步事件执行完成后调用complete()

    • pulling   当用户下拉的时候调用。

    • start     当用户开始下拉的时候调用。

      好了,我们看下后台的处理事件

      

      //滚动条下拉刷新
      doRefresh(refresher) {
        console.log('Begin async operation', refresher);
    
        setTimeout(() => {
          this.items = [
            '数据更新了请注意',
            '数据更新了榆中县城农电公司',
            '数据更新了Aires',
            '数据更新了Cairo',
            '数据更新了Dhaka',
            '数据更新了Edinburgh',
            '数据更新了Geneva',
            '数据更新了Genoa',
            '数据更新了Glasglow',
            '数据更新了Hanoi',
            '数据更新了Hong Kong',
            '数据更新了Islamabad',
            '数据更新了Istanbul',
            '数据更新了Jakarta',
            '数据更新了Kiel',
            '数据更新了Kyoto',
            '数据更新了Le Havre',
            '数据更新了Lebanon',
            '数据更新了Lhasa',
            '数据更新了Washington'
          ];
          refresher.complete();
          
        }, 2000);
      }

      在这里,给this.Items重新赋值。前台就能重新刷新数据了。

    接下来,我们要实现底部下拉加载数据的功能了

    前台html页面

    <!--滚动条底部加载数据-->
      <ion-infinite-scroll (infinite)="doInfinite($event)">
        <ion-infinite-scroll-content></ion-infinite-scroll-content>
      </ion-infinite-scroll>

    1.ion-infinite-scroll ,滑动滚动条触发加载事件

       (infinite)="doInfinite($event)",加载触发后台doInfinite()方法

    2.后台代码

      doInfinite(infiniteScroll) {
    
        setTimeout(() => {
          for (var i = 0; i < 500; i++) {
            this.items.push('榆中县城农电公司' + i);
          }
    
          console.log('Async operation has ended');
          infiniteScroll.complete();
        }, 1000);
      }

    1.this.items.push,给数据源推入数据

    2.函数最后别忘记加infiniteScroll.complete();

            

      

  • 相关阅读:
    C#之设计模式
    C#之索引器
    C#基础强化-继承与多态
    C#基础强化-进程操作
    WKWebView与JavaScript交互基础
    HTML之JS学习
    HTML之CSS学习
    HTML学习
    玩诈欺的小杉
    最大异或和
  • 原文地址:https://www.cnblogs.com/Linyb/p/5434132.html
Copyright © 2020-2023  润新知