当前位置: 移动技术网 > IT编程>开发语言>JavaScript > 小程序记录

小程序记录

2019年03月09日  | 移动技术网IT编程  | 我要评论

1,封装请求方法

1.方法封装(新建文件夹utils,工具文件,在文件夹下创建http.js文件,用于对方法封装)
http.js:

var app = getapp();
//项目url相同部分,减轻代码量,同时方便项目迁移
var host = 'https://xxx.com/';

/**
 * post请求,
 * url:接口
 * postdata:参数,json类型
 * dosuccess:成功的回调函数
 * dofail:失败的回调函数
 */
function request(url, postdata, dosuccess, dofail) {
  wx.request({
    //项目的真正接口,通过字符串拼接方式实现
    url: host + url,
    header: {
      "content-type": "application/json;charset=utf-8"
    },
    data: postdata,
    method: 'post',
    success: function (res) {
      //参数值为res.data,直接将返回的数据传入
      dosuccess(res.data);
    },
    fail: function () {
      dofail();
    },
  })
}

//get请求,不需传参,直接url调用,
function getdata(url, dosuccess, dofail) {
  wx.request({
    url: host + url,
    header: {
      "content-type": "application/json;charset=utf-8"
    },
    method: 'get',
    success: function (res) {
      dosuccess(res.data);
    },
    fail: function () {
      dofail();
    },
  })
}
module.exports.postdata = request;
module.exports.getdata = getdata;

2,调用

//引入代码
var http = require("../../../utils/http.js")
//page({..
//调用方法
http.getdata('api/v1/common/basic/query/setting.htm', (data) => {
      var that = this;
      console.log(data)
      // that.setdata({
      //   picturelist: data.rows
      // })
      //我后面测试了一下,直接this.setdata也可以,但是因为我在没有使用封装方法的时候
      //this.setdata报过错,不能直接用this,所以我在赋值的时候一般都会加上var that = this;
      //这句话算是一个不是习惯的习惯
    }, (data)=>{
      console.log(data)
    });

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网