微信小程序> 微信小程序消息提醒封装(简单但是最实用)

微信小程序消息提醒封装(简单但是最实用)

浏览量:792 时间: 来源:暗影刀客

文章目录

          • 一、思路
          • 二、开干
            • 2.1 在app.js中获取当前页面对象,进行函数绑定
            • 2.2 页面初始化
            • 2.3 调用
          • 后记

题记:微信小程序做久了,一直用的都是微信原生的控件,其他的还能凑合用,但是每次关于消息的提醒,都要写那几行冗余代码,不忍吐槽,后来思考要不要封装成组件来用,权衡之后,官方组件只是丑点,但是基本满足需求,所以我们只对基本的showToast和showModal进行封装,毕竟比较高频。

一、思路

封装的话思考点是两点:
封装简单,减少冗余代码

  1. 优化代码,减少代码的冗余
  2. 优化调用,使用的时候最好一行代码即可

所以,根据小程序结构封装代码放在全局的app.js最好,使用的时候只需要一次初始化即可。

二、开干

这是我的处理方法,仅供参考,如有更方便的可以交流

2.1 在app.js中获取当前页面对象,进行函数绑定
initNotice(){    let pages = getCurrentPages(); // 获取页面栈    let page = pages[pages.length-1];// 获取当前页面对象    page.showCustomToast = function(e){ // 绑定事件到当前对象      wx.showToast({        title: e,        duration:1000,        icon:'none'      })    }    page.showCustomModal = function(title,callback){// 绑定事件到当前对象,至于左右按钮的样式和取消按钮的事件,根据自己的业务自己添加      wx.showModal({        title: '',        content: title,        success(res) {          if (res.confirm) {            callback();          }        }      })    }  },
2.2 页面初始化

在任意使用消息提醒的页面进行初始化,基本每个页面都会用的到,所以我基本每个页面都进行了调用,上代码:

onLoad: function () {   // 页面初始化 options为页面跳转所带来的参数   let app = getApp();//获取全局app对象   app.initNotice();  // 调用这个函数进行事件的初始化绑定 },

截止到目前为止,已经绑定完成,就是一行代码

2.3 调用

因为事件已经绑定到当前页面的this对象上了,所以可以直接"this."的形式进行调用,很简单:样例:

let that = this;that.showCustomModal('测试一下Modal',function(){    that.showCustomToast("测试成功!");});

效果:
小程序
点击确定:
小程序
因为个人喜欢不带icon的提示,所以如果有需求可自行封装。

后记

到这里基本完了,比较简单,最后说一下,考虑到app.js不能太笨重,所以只把开发中一些很高频的代码封装进来,嗯,还是挺爽的

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎