刷新组件

- 主要是学习一下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的刷新组件也写一下,其实都差不多。

移动端刷新组件XtnScroll--Angular4实现的更多相关文章

  1. 分享一个discuz touch端的jQuery下拉刷新组件

    在线Demo 最近装了个discuz论坛, 趣股VIP吧,发现里面内置的jQuery上拉刷新组件写得还行,STATICURL可以用'http://o9gzet7tk.bkt.clouddn.com/i ...

  2. 打造通用的Android下拉刷新组件(适用于ListView、GridView等各类View)

    前言 近期在做项目时,使用了一个开源的下拉刷新ListView组件.极其的不稳定,bug还多.稳定的组件又写得太复杂了,jar包较大.在我的一篇博客中也讲述过下拉刷新的实现,即Android打造(Li ...

  3. 移动端 Modal 组件开发杂谈

    Vant 是有赞开发的一套基于 Vue 2.0 的 Mobile 组件库,在开发的过程中也踩了很多坑,今天我们就来聊一聊开发一个移动端 Modal 组件(在有赞该组件被称为 Popup )需要注意的一 ...

  4. vue-上拉加载、下拉刷新组件

    vue在移动端开发过程中,上拉加载.下拉刷新是页面的基本需求,现在给大家介绍一种基于touch事件封装的刷新组件. 组件支持传参.传递事件.请求成功异步回调.上拉与触底触发加载或刷新. 父子组件间的通 ...

  5. Google自己的下拉刷新组件SwipeRefreshLayout

    SwipeRefreshLayout SwipeRefreshLayout字面意思就是下拉刷新的布局,继承自ViewGroup,在support v4兼容包下,但必须把你的support librar ...

  6. Android内置下拉刷新组件SwipeRefreshLayout

    也许下拉刷新之前,你可能会使用一些第三方的开源库,例如PullToRefresh, ActionBar-PullToRefresh等待,但现在有的正式组成部分---SwipeRefreshLayout ...

  7. MVC文件上传09-使用客户端jQuery-File-Upload插件和服务端Backload组件让每个用户有专属文件夹,并在其中创建分类子文件夹

    为用户创建专属上传文件夹后,如果想在其中再创建分类子文件夹,该怎么做?可以在提交文件的视图中再添加一个隐藏域,并设置 name="uploadContext". 相关兄弟篇: MV ...

  8. MVC文件上传08-使用客户端jQuery-File-Upload插件和服务端Backload组件让每个用户有专属文件夹

    当需要为每个用户建立一个专属上传文件夹的时候,可以在提交文件的视图中添加一个隐藏域,并设置name="objectContext". 相关兄弟篇: MVC文件上传01-使用jque ...

  9. MVC文件上传07-使用客户端jQuery-File-Upload插件和服务端Backload组件裁剪上传图片

    本篇通过在配置文件中设置,对上传图片修剪后保存到指定文件夹. 相关兄弟篇: MVC文件上传01-使用jquery异步上传并客户端验证类型和大小  MVC文件上传02-使用HttpPostedFileB ...

随机推荐

  1. 20169219 Nmap扫描实验

    提交用 namp 对Windows 靶机,SEED靶机,Linux靶机的扫描的命令和结果进行截图 一.首先分析Linux靶机Metasploitable 扫描Metasploitableb靶机 扫描M ...

  2. ntroducing K-Pattern: A Rapid Way to Make CRUD Operations with Entity Framework

    Download Source Introduction Earlier in the last year I made a different approach to work on Entity ...

  3. Unity Ioc框架简单例子

    IOC:英文全称:Inversion of Control,中文名称:控制反转,它还有个名字叫依赖注入(Dependency Injection).作用:将各层的对象以松耦合的方式组织在一起,解耦,各 ...

  4. android android遇到的错误

    android遇到的错误 一.eclipse运行.生成.打包APK报错: 原因1: jdk版本太低,升级jdk 原因2: tools选择: android sdk build-tools  大于等于2 ...

  5. 201621123012 《Java程序设计》第1周学习总结

    1. 本章学习总结 学习了java的理论知识和它与C语言的差别,什么是JVM,区分JRE与JDK并学习JAVA环境的安装.熟悉控制台下的常用命令,java函数的编写.熟练使用编写JAVA所需要的工具( ...

  6. Eclipse内存不足 增加eclipse的运行内存

    自己解决的 三.    修改Run Configurations (此方法可行) 在代码上右键,依次点击“Run As ”-> “Run Configurations ”,在Arguments  ...

  7. GitHub CEO:GitHub 十年,感谢有你

    简评:不知为何,总感觉 GitHub 成立不止 10 年了,你们有这种错觉么? 本文是 GitHub 联合创始人兼 CEO:Chris Wanstrath 在计算机世界杂志写的文章. 当我们回顾 Gi ...

  8. 了解一个名词——GTD

    概念:就是Getting Things Done的缩写,翻译过来就是“把事情做完”,是一个管理时间的方法. 核心理念概括:就是必须记录下来要做的事,然后整理安排并使自己一一去执行. 五个核心原则是:收 ...

  9. winform跨线程问题(有参数和无参数)

    1.invoke是同步线程 using System; using System.Collections.Generic; using System.ComponentModel; using Sys ...

  10. SDUT OJ 数据结构实验之链表三:链表的逆置

    数据结构实验之链表三:链表的逆置 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss Problem Descri ...