【Angular】refresher刷新器

来源:互联网 发布:mac地址修改 编辑:程序博客网 时间:2024/06/02 03:34

1.问题:

AngularJS中的refresh好refresher该如何使用?

2.源代码:

前台代码:

    <ion-refresher (ionRefresh)="refresh($event)">        <ion-refresher-content pullingIcon="arrow-dropdown" pullingText="下拉刷新..." refreshingSpinner="circles"        refreshingText="努力刷新数据中...">        </ion-refresher-content>    </ion-refresher>

2.1是固定格式,自己可以去官网看看介绍:\[<ion-content>\]

后台代码:

refresh(refresher) {        this.pageIndex = 1;//定义初始页面        /*加载数据*/        let loading = this.loadingCtrl.create({            content: '刷新中...',            showBackdrop: false        });        loading.present();        this.userService.getUsers(this.pageIndex,this.id)            .subscribe(result => {                    this.emails= result;                    this.toastCtrl.create({                        message: '数据刷新成功',                        duration: 1000                    }).present();                    refresher.complete();                    loading.dismiss();                },                (e) => {                    console.log(e, '初始化错误 error');                    refresher.complete();                    loading.dismiss();                });    }

3.截图:

4.总结:

  1. refresh(refresher) { }
    表示刷新方法,小括号内传入参数为一个刷新器;大括号内为具体的刷新方法.

  2. loading由loadingCtrl控制器来创建(create)({ })
    let loading = this.loadingCtrl.create({
    content: '数据刷新中...',
    showBackdrop: false//
    });

    content:是刷新时候的内容;
    showBackdrop:是否加载背景;类似于background;

3.present用于呈现效果;

 loading.present();

4.subscribe:订阅,订购的意思。表示,我前面写了方法,后面要跟踪查看效果。就像你订了一份报纸(loading动作),报社每天就要给你发报纸,给你看效果(subscribe);

subscribe(result => {                    this.emails= result;                    this.toastCtrl.create({                        message: '数据刷新成功',                        duration: 1000                    }).present();                    refresher.complete();                    loading.dismiss();                }

这里,subscribe(result=>{ })小括号里面是用上面的结果(result)来执行方法,方法在大括号内{ }。
这里的‘=>’就可以理解为一种function动作;只不过,传入值在‘=>’前面,方法在{ }里面;

5.toastCtrl是吐司控制器;
toast是一种类似于alert的效果,用来作提示信息,但是过一定时间就会消失,不会像alert的弹出框,你必须手动点击取消之类的按钮才能取消掉;这个是一个减退的效果,你不操作,它自己等会会消失掉;toast必须要toastCtrl控制;duration是存在时间,1000毫秒,即1秒;create(),产生;present()展示;

6.refresher.complete()表示刷新器完成;

7.loading.dismiss();表示数据加载完成,解散;

原创粉丝点击