狗万官网酒店 > 狗万官网下载 > 微信小程序HTTP接口请求封装代码实例_javascript艺术

微信小程序HTTP接口请求封装代码实例_javascript艺术

来源: 2019-09-09 19:44 我来投稿 参与评论
这篇文章主要介绍了微信小程序HTTP接口请求封装代码实例,文中通过示范代码介绍的独特详细,对大家的上学或者工作具有原则性的参考学习价值,要求的爱人可以参考下

1.艺术封装(组建文件夹util,工具文件,在文件夹下创办request.js文件,用于对艺术封装)

request.js:

var app = getApp();
//品种URL相同部分,减轻代码量,同时方便项目迁移
//此地因为我是当地调试,故而host不规范,实际上应该是你备案的店名信息
var host = 'http://localhost:8081/demo/';
 
/**
 * 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用于导出代码
 * js文件中通过var call = require("../util/request.js") 加载
 * 在引入引入文件的时光" "其中的情节通过../../../这种类型,小程序的热水器会自动提示,因为你可能
 * 品种目录不止一级,不同之js文件对应的工具类的职务不一样
 */
module.exports.request = request;
module.exports.getData = getData;

2.page其中随便一个创建一个文件夹,创造四种文件,在js其中加入 

//引入代码
var call = require("../util/request.js")
 
Page({
 data: {
  pictureList: [],
 },
  
 onLoad: function () {
  var that = this;
  //合同封装的主意,为了方便我直接在页面加载的时光执行这个艺术
  call.getData('lunbo.do', this.shuffleSuc, this.fail);
  // 无用,眼前忘记注释,对不起
  // this.loadMsgData(that);
 },
 shuffleSuc: function (data) {
  var that = this;
  that.setData({
   pictureList: data.rows
  })
  //我后面测试了一下,直接this.setData也得以,但是因为我在没有使用封装方法的时光
  //this.setData报过错,决不能直接用this,故而我在赋值的时光一般都会加上var that = this;
  //这句话算是一个不是习惯的习惯
 },
 fail: function () {
  console.log("失败")
 },
})

名将回调函数写在page其中,在调用封装方法的时光通过this.艺术名调用,这样就能确保that.setData艺术有效,如果是写在外边的function艺术小程序编译器不会报错,但是在wxml外方bindtap无效,我也没深究,同时在call.getData艺术中滥用的时光虽然能够进入该方法,但是赋值是行不通的,故而我不建议用这种方法:

function shuffleSuc(data) {
 var that = this;
 that.setData({
  pictureList: data.rows
 })
}

3. 运作之后通过小程序的看台AppData可以打印data其中的值,同时也得以根据要求在页面中表现

上述就是本文的方方面面内容,瞩望对大家的上学有所帮助,也愿意大家多多支持脚本的师。

义务编辑:狗万官网酒店
 
 
0% (0)
 
 
0% (0)
机长评论( ) 请自觉遵守互联网相关的富民政策法规,不准发布色情、暴力、反动的议论。
地名: 匿名?