美文网首页
hz-属性和功能模块封装

hz-属性和功能模块封装

作者: zhanghongzhen | 来源:发表于2018-12-27 09:06 被阅读0次

    在根目录  设置config.js 设置公共属性


    const config = {

    api_base_url:'http://bl.7yue.pro/v1/',

    appkey:"请访问www.7yue.pro获取开发者key",

    }

    export {config }


    封装公共请求功能架构封装

    分三步实现  

    1.所需内容的导入和定义对象和导出对象 

    2. 设置所需属性参数    

    3. 封装功能 成功和失败回调

    4.细节处理

    在根目录util 文件中 创建http.js 请求模块。

    import {config} from "../config.js"

    class HTTP {

        request(params){ 

        //    对请求的封装  参数和成功和失败回调的封装

    if(!params.method){  params.method="GET" }

        wx.request({

    //属性封装

        url:config.api_base_url+params.url,

        method:params.method,

        data:params.data,

        header:{

        "content-type":"application/json",

        appkey:config.appkey

        },

    success:function(res){

    //分 200系列的处理成功的处理, 其余的 请求成功的 返回状态提示

    let code=res.statusCode.toString();

    if(code.startWith("2"){

    params.success&&params.success(res.data);//如果有成功的回调  执行res.data

    }else{

    let error_code=res.data.error_code;

    this._show_error(error_code);

    }

    },

    //失败的回调 

    fail:(err)=>{

    this._show_error(1)

    }


        })

        }

    //定义内置方法  不对外

        _show_error(error_code){

        //如果存在error_code 就执行对应数据 不存在  执行固定

    if(!error_code){

    error_code=1

    }

    const tip =tips[error_code]

    wx.showToast({

    title:tip?tip:tips[1],

    icon:"none",

    duration:2000

    })

        }

    }

    export {HTTP}

    相关文章

      网友评论

          本文标题:hz-属性和功能模块封装

          本文链接:https://www.haomeiwen.com/subject/ekzclqtx.html