欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

对接数据前的准备(采用的是jquery的方式开发)

程序员文章站 2022-06-21 14:50:47
...
        // 1.0 设置页面数据
        var pagedata = {
            uid: '', // 用户id
            gdstatus: '', // 工单类型 代收工,进行中,已完成
            page: 0
        }
        // 2.0实现切换效果(获取分类状态)
        cateTab()
        function cateTab() {
            $('#header .tabitem').click(function () {
                $(this).addClass('active').siblings('.tabitem').removeClass('active')
                pagedata.page = 0
                var sta = $(this).data('sta')
            })
        }
        // 3.0 获取数据
        function getLists(sta) {
            var res  = request({ // request 为封装好的请求方法
                url:'xxx',
                data: {
                    user_id: '', // 用户id
                    gdstatus:'', // 工单状态
                    page: pagedata.page
                }
            })
          if (!res) {
              weui.alert('网络请求失败')
          } else {
            renderList(res.data)
          }
        }
        // 4.0 渲染器列表
        function renderList (data) {

        }
        // 5.0 加载更多(page+1,重新获取数据,重新渲染)
        function loadmore() {
            
        }

config.js是项目配置文件,配置主域名,封装请求方法,定义常用的方法操作,如去除字符串前后空格,手机校验,维修登录等等

var baseULR = 'https://jxyy.gzqqwl.com/index';

function request(options) {
    var res = ''
    $.ajax({
        url: `${baseULR}/${options.url}`,
        type: options.type || 'GET',
        data: options.data || {},
        async: false,
        success: resutlt => {
            res = resutlt
        },
        error: erro => {
            console.log('网络请求失败')
            res = false
        }
    })
    return res;
}


String.prototype.regexptel = function () { // 手机校验
    return /^1[3456789]\d{9}$/.test(this)
}
String.prototype.spacetrim = function () { // 去除字符串的前后空格
    return this.replace(/(^\s*)|(\s*$)/g, "")
}
String.prototype.fluterdate = function() { // 去除字符串的中文
    console.log(this.replace(/[\u4e00-\u9fa5]{1}$/,''))
    return this.replace(/[\u4e00-\u9fa5]{1}$/g,'')
}
document.body.onscroll = function (e) {
    if (document.documentElement.clientHeight - document.body.clientHeight > 0) {
        $('weui-mask.weui-animate-fade-in').css('top', document.documentElement.clientHeight - document.body.clientHeight + (document.body.clientHeight / 2))
    }
}
function getUrlParam(name) { // 获取url中的参数
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) {
        return unescape(r[2]);
    } else {
        return null;
    }
}
window.onload = function () {
    // window.localStorage.removeItem('openid')
    // window.localStorage.removeItem('loginStorage')
    // 获取openid
    wxlogin();
    orgin();
}

function wxlogin() {
    if (isWeiXin()) {
        $.getUrlParam = function (name) {
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
            var r = window.location.search.substr(1).match(reg);
            if (r != null) return unescape(r[2]);
            return null;
        }
        var openid = ''

        if (window.localStorage.getItem('openid') != null && window.localStorage.getItem('openid') != undefined) { //存在openid
            openid = window.localStorage.getItem('openid');
        } else {
            openid = $.getUrlParam('openid');
            // weui.alert(openid)
            if (openid == '' || openid == null || openid == undefined) {
                var siteurl = request({
                    url: 'login/urlencode',
                    data: {}
                })
                window.location.href = baseULR + '/login/wxlogin?url=' + siteurl.data;
                return;
            } else {
                window.localStorage.setItem('openid', openid)
            }
        }
        // 获取用户信息
        var userinfo = window.localStorage.getItem('loginStorage')
        if(!userinfo){
            var result = request({
                url: 'login/login',
                data: {
                    openid: openid
                }
            })

            if (result.error === 0) { // 成功获取用户信息
                window.localStorage.setItem('loginStorage', JSON.stringify(result))
            }
        }


    }

}

function isWeiXin() {
    //window.navigator.userAgent属性包含了浏览器类型、版本、操作系统类型、浏览器引擎类型等信息,这个属性可以用来判断浏览器类型
    var ua = window.navigator.userAgent.toLowerCase();
    console.log(ua)
    //通过正则表达式匹配ua中是否含有MicroMessenger字符串
    if (ua.match(/MicroMessenger/i) == 'micromessenger') {
        return true;
    } else {
        weui.alert('请在微信中打开')
        return false;
    }
}

function orgin() { // 键盘弹出时 底部栏的隐藏
    var clientHeight = document.documentElement.clientHeight || document.body.clientHeight;
    $(window).on('resize', function (e) {
        var nowClientHeight = document.documentElement.clientHeight || document.body.clientHeight;
        if (clientHeight > nowClientHeight) {
            $('#footer').hide()
            $('.save').hide()
        } else {
            $('#footer').show()
            $('.save').show()
        }
    });
}


相关标签: 工具代码