Ionic—通知模块开发

一.通知模块页面布局开发

1.实例代码
<ion-header>
  <ion-navbar>
    <ion-title>通知</ion-title>
  </ion-navbar>
</ion-header>
<ion-content>
  <ion-list>
    <ion-item>
      <!-- 通知头像 -->
      <ion-avatar item-left>
        <img src="">
      </ion-avatar>
      <!-- 通知内容 -->
      <h2></h2>
      <p></p>
    </ion-item>
  </ion-list>
</ion-content>

二.通知页面的列表数据加载

1.开发技巧
  • 有时候ionic会报view不能隐藏,此时将loading.dismiss()变成loading.dismissAll()就可以了,dismissAll表示关闭所有的loading
2.实例代码
  • notifications.html

    <ion-header>
      <ion-navbar>
        <ion-title>通知</ion-title>
      </ion-navbar>
    </ion-header>
    <ion-content>
      <ion-list>
        <ion-item *ngFor="let n of notificationList" (click)="getDetails(n.questionId)">
          <!-- 通知头像 -->
          <ion-avatar item-left>
            <img src="{{n.headFace}}">
          </ion-avatar>
          <!-- 通知内容 -->
          <h2>{{n.notificationTitle}}</h2>
          <p>{{n.notificationMessage}}</p>
        </ion-item>
      </ion-list>
    </ion-content>
    
  • notifications.ts

    import { Component } from '@angular/core';
    import { NavController, NavParams, LoadingController, ToastController } from 'ionic-angular';
    import { Storage } from '@ionic/storage';
    import { BaseUI } from '../../common/baseUI';
    import { DetailsPage } from '../details/details';
    
    @Component({
      selector: 'page-notifications',
      templateUrl: 'notifications.html',
    })
    export class NotificationsPage extends BaseUI{
    
      notificationList:any;
    
      constructor(
        public navCtrl: NavController, 
        public navParams: NavParams,
        public storage: Storage,
        public loadingCtrl: LoadingController,
        public toastCtrl: ToastController) {
          super();
      }
    
      ionViewDidLoad() {
        this.storage.get('token').then((val)=>{
          if(val !== null){
            let loading = this.showLoading(this.loadingCtrl,'Loading...');
            //模拟发送请求,获取提醒数据
            setTimeout(()=>{
              this.notificationList = [
                {questionId:1,headFace:'../../assets/imgs/logo.png',notificationTitle:'更新维护',notificationMessage:'明日系统更新一天'},
                {questionId:2,headFace:'../../assets/imgs/avatar.jpg',notificationTitle:'更新维护',notificationMessage:'明日系统更新一天'},
                {questionId:3,headFace:'../../assets/imgs/logo.png',notificationTitle:'更新维护',notificationMessage:'明日系统更新一天'},
                {questionId:4,headFace:'../../assets/imgs/avatar.jpg',notificationTitle:'更新维护',notificationMessage:'明日系统更新一天'},
                {questionId:5,headFace:'../../assets/imgs/logo.png',notificationTitle:'更新维护',notificationMessage:'明日系统更新一天'},
              ];
              loading.dismissAll();
            },500)
          }
        })
      }
    
      getDetails(questionId) {
        this.navCtrl.push(DetailsPage,{id:questionId});
      }
    }
    
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值