zoukankan      html  css  js  c++  java
  • 微信小程序前端开发中经常用到的一些好方法(待后续继续补充)

    一、两种时间格式校验

      1.精确到年、月、日、时、分、秒

    function formatTime(date) {
      var year = date.getFullYear()
      var month = date.getMonth() + 1
      var day = date.getDate()
      var hour = date.getHours()
      var minute = date.getMinutes()
      var second = date.getSeconds()
      return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
    }

    2.用“-”连接年月日

    function formatTime2(date){
      var year = date.getFullYear()
      var month = date.getMonth() + 1
      var day = date.getDate()
      var hour = date.getHours()
      var minute = date.getMinutes()
      var second = date.getSeconds()
      return [year, month, day].map(formatNumber).join('-')
    }
    
    /*小于两位数的处理*/
    function formatNumber(n) {
      n = n.toString()
      return n[1] ? n : '0' + n
    }

    二、加载显示数据之前  “请稍后”等待提示和关闭提示

    function showLoading(){
      console.log("showloading-----");
      wx.showToast({
            title: '请稍后',
            icon: 'loading',
            duration: 5000
        });
    }
    function hideLoading(){
       wx.hideToast();
    }

    三、取消、确认操作以及网络异常提示框

    // 取消确认提示框
    function showModal(text){
       wx.showModal({
          title: '提示',
          content: text,
          showCancel:false,
          success: function(res) {
            if (res.confirm) {
               
            }
          }
       })
    }
    // 网络异常提示框
    function showFailModal(){
      wx.showModal({
        title: '提示',
        content: '网络异常,请检查网络',
        success: function(res) {
          if (res.confirm) {
            console.log('用户点击确定')
          }
        }
      })
    }

    四、根据id去本地缓存中的products中匹配到p_title

    function getProductNameById(id){
      var products = wx.getStorageSync('products');   /**本地缓存中的products对象**/
      for(var i=0;i<products.length;i++){
        var product=products[i]; 
        if(product.p_id==id){
          return product.p_title;
        }
      }
    }

    五、根据id去本地缓存中的products中匹配product

    function getProductById(id){
      var products = wx.getStorageSync('products');    /**本地缓存中的products对象**/
      for(var i=0;i<products.length;i++){
        var product=products[i]; 
        if(product.p_id==id){
          return product;
        }
      }
    }
    function su(){
    
    }
    
    function com(){
    
    }

    六、生成唯一标识符方法(登录时先在本地缓存中获取,若没有,则按照方法去生成一个全局唯一标识符)

    function uuid(len, radix) {
        var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');
        var uuid = [], i;
        radix = radix || chars.length;
     
        if (len) {
          for (i = 0; i < len; i++) uuid[i] = chars[0 | Math.random()*radix];
        } else {
          var r;
     
          uuid[8] = uuid[13] = uuid[18] = uuid[23] = '-';
          uuid[14] = '4';
     
          // Fill in random data.  At i==19 set the high bits of clock sequence as
          for (i = 0; i < 36; i++) {
            if (!uuid[i]) {
              r = 0 | Math.random()*16;
              uuid[i] = chars[(i == 19) ? (r & 0x3) | 0x8 : r];
            }
          }
        }
     
        return uuid.join('');
    }

    总结:将上面的方法都放在util.js中,然后在其中最后写一个暴露接口的方法,方便其他地方调用,如下

    module.exports = {
      formatTime: formatTime,
      formatTime2: formatTime2,
      showLoading:showLoading,
      hideLoading:hideLoading,
      showFailModal:showFailModal,
      getProductNameById:getProductNameById,
      getProductById:getProductById,
      showModal:showModal,
      uuid:uuid,
      su:su,
      com:com
    }
  • 相关阅读:
    【Qt】Qt软件打包发布
    最大公约数最小公倍数
    random实现验证码
    sort 和sorted的 区别
    Python-内置数据结构之元组(tuple)
    BZOJ 1112 线段树
    POJ 1682 DP
    POJ 1671 第二类斯特林数
    BZOJ 1592 DP
    POJ 1636 DFS+DP
  • 原文地址:https://www.cnblogs.com/zhaoqiming/p/9150248.html
Copyright © 2011-2022 走看看