zoukankan      html  css  js  c++  java
  • 移动端刷新组件XtnScroll--Angular4实现

    刷新组件

    - 主要是学习一下Angular4所有花了我一天时间,写了这个刷新组件。

    • 以项目开发当中,特别是手机移动端开发的时候,经常要用到就是上拉加载下一面,下拉刷新获取最新数据的功能。

    • 在网也有很多类似的组件,前段时间用ReactJs写的项目的时候,就经常要用到,要是项目当时间也紧,从网找了一些,用来总是不那么顺手,后来干脆就自己写,这样也好控制。

    • 在用第三库的,有个很大问题,就是样式,第三库的样式基本上已经定型的了,要修改很麻烦,不修改吧和产品设计那边又不好办,所以基本上不用。其实还有一个问题,想用第三库,有的时候,只想用它里的一个组件,可以引用的时候,往往得他们整个都的打包进去,要不能知道哪里会出什么情况。

    • 种种情况吧项目里基本没有用到,要实现什么功能的组件基本上都自己写。向日期组件,弹消息组件,模式弹框组件,轮播组件等基本都自己写。


    要想实现上拉加载,下拉刷新功能,移动端就得靠 touch事件,开始、移动及结束三个事件来实现

    先创建三个文件分别是,Scroll.ts、Scroll.html、Scroll.scss文件里面的内容

    1.Scroll.ts里大致内容如下:

    文件具体内容:请点击这里

    @Component({
      selector: 'xtn-scroll',
      templateUrl: 'Scroll.html',
      styleUrls: ['Scroll.scss']
    })
    export class XtnScroll implements OnInit, OnChanges {
      constructor() {}
      ngOnInit():void{}
      ngOnChanges():void{}
      OnTouchStart(){}
      OnTouchMove(){}
      OnTouchEnd(){}
      ...
    }

    2.Scroll.html主要分三部分

    内容分三部分:头、中、尾。

    1. 头部主要显示下拉刷新等信息
    2. 中部主要是显示从后台获取到的数据展示内容。
    3. 尾部显示,上拉获取下面等提示信息
    <div class="scrollCss" (touchstart)="OnTouchStart($event)" (touchmove)="OnTouchMove($event)" (touchend)="OnTouchEnd($event)">
      <div #divTop class="top">
        <div class="title">{{Info.TitleTop}}</div>
      </div>
      <ng-content #divContent></ng-content>
      <div #divBottom class="bottom">
        <div class="title">{{Info.TitleBottom}}</div>
      </div>
    
    </div>

    3.Scroll.scss文件里就是样式了

    展示一下,请看下图

    这里写图片描述

    上面向下拉的时候,提示的信息,

    这里写图片描述

    当拉到一定位置的时候,改变提示信息内容

    这里写图片描述

    松开手后,就会事件通知父级,让其调用接口获取数据去。

    组件的使用

    写好一个组件之后,就是怎么来使用了,下图就是如何使用组件的Demo
    这里写图片描述

    至于如何调用后台接口的,请 点击 查看,运行起来就可以看到了,当然还要配置数据连接什么的

    以后有时间再把ReactJs、VueJs的刷新组件也写一下,其实都差不多。

  • 相关阅读:
    步步为营-15-文件夹的操作
    步步为营-14-文件操作
    步步为营-13-日期转化
    步步为营-12-Dictionary-翻译
    步步为营-11-List<T>泛型的简单练习
    步步为营-10-string的简单操作
    步步为营-09-简单工厂类-计算器
    B. Fixed Points
    C. Cd and pwd commands
    Queries on a String
  • 原文地址:https://www.cnblogs.com/xiaotuni/p/7286480.html
Copyright © 2011-2022 走看看