微信小程序 封装http请求

最近看了一下微信小程序,大致翻了一下,发现跟angular很相似的,但是比angular简单的很多具体可参考官方文档
https://mp.weixin.qq.com/debug/wxadoc/dev/framework/app-service/page.html?t=2017112
下面将封装http请求服务部分的服务以及引用部分
// 本服务用于封装请求
// 返回的是一个promisepromise
var sendRrquest = function (url, method, data, header) {
var promise = new Promise(function (resolve, reject) {
wx.request({
url: url,
data: data,
method: method,
header: header,
success: resolve,
fail: reject
})
});
return promise;
};
module.exports.sendRrquest = sendRrquest
在utils文件中创建文件requestService.js文件
下边是在page.js文件中引用部分代码
// 界面一般通过使用Page函数注册一个界面,接收一个Object对象,该对象指定了初始化数据/生命周期函数函数/事件处理函数
// data 存放页面初始化数据数据,类似angular的的$scope
// onLoad 生命周期函数 监听页面加载
// onReady 生命周期函数 监听页面首次渲染完成完成
// onShow 生命周期函数 监听界面显示
// onHide 生命周期函数 监听界面隐藏
// onUnload 生命周期函数 监听页面卸载
// onPullDownRefresh 页面相关事件 监听用户下拉事件
// onReachBottom 页面上拉到达底部触发的事件
// onShareAppmessage 点击左上方分享事件
var testService = require('../../utils/testService.js')
var request = require('../../utils/requestService.js')
Page({
data:{
test:'123',
positionlist:[]
},
onLoad:function(){
},
onReady: function () {
var that = this;
testService.test('a');
testService.agerntest('a');
var url = 'https://webapi.tianjihr.com/position/searcher?sort=-refresh_time&offset=10&limit=10';
request.sendRrquest(url, 'GET', {}, {})
.then(function (response) {
that.setData({
positionlist:response.data.list
});
console.log(response);
}, function (error) {
console.log(error);
});
},
onPullDownRefresh: function () {
},
onShareAppMessage: function () {
// 微信分享需要的配置参数
return {
title: '自定义分享标题',
desc: '自定义分享描述',
path: '/page/user?id=123'
}
// console.log(1);
}
});
上边的代码和js代码有不同的代码需要注意
1.异步处理方式改变
原有方式是:
var promise = new Promise();
promise.resolve('成功');
promise.reject('失败');
return promise;
现有的方式:
return new Promise(function (resolve, reject) {
resolve('成功');
reject('失败');
})
2.在promise成功或者失败的回调中不能直接赋值,如:
var that = this;
test()
.then(function(){
that.data.test='';
},function(){
})
需要使用如下方式:
var that = this;
test()
.then(function(){
that.setDatat={
test:123
};
},function(){
})
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 微信小程序
# 封装http
# 封装http请求实例详解
# http
# 微信小程序设置http请求的步骤详解
# 微信小程序 http请求封装详解及实例代码
# 微信小程序 http请求的session管理
# 微信小程序 http请求详细介绍
# 微信小程序HTTP接口请求封装的实现
# 微信小程序封装的HTTP请求示例【附升级版】
# 监控微信小程序中的慢HTTP请求过程详解
# Fundebug支持监控微信小程序HTTP请求错误的方法
# 微信小程序HTTP接口请求封装代码实例
# 微信小程序HTTP请求从0到1封装
# 周期函数
# 自定义
# 的是
# 是在
# 看了
# 首次
# 希望能
# 翻了
# 谢谢大家
# 需要注意
# 回调
# 很相似
# 加载
# 文档
# url
# data
# header
# method
# function
# promisepromise
相关文章:
网站制作价目表怎么做,珍爱网婚介费用多少?
如何选择香港主机高效搭建外贸独立站?
如何正确选择百度移动适配建站域名?
制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?
高性价比服务器租赁——企业级配置与24小时运维服务
如何通过cPanel快速搭建网站?
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
如何通过网站建站时间优化SEO与用户体验?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
如何在Golang中引入测试模块_Golang测试包导入与使用实践
如何访问已购建站主机并解决登录问题?
专业网站建设制作报价,网页设计制作要考什么证?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
javascript基本数据类型及类型检测常用方法小结
如何在Tomcat中配置并部署网站项目?
XML的“混合内容”是什么 怎么用DTD或XSD定义
如何在万网主机上快速搭建网站?
购物网站制作公司有哪些,哪个购物网站比较好?
小程序网站制作需要准备什么资料,如何制作小程序?
高端企业智能建站程序:SEO优化与响应式模板定制开发
独立制作一个网站多少钱,建立网站需要花多少钱?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
建站之星logo尺寸如何设置最合适?
Android使用GridView实现日历的简单功能
如何实现建站之星域名转发设置?
企业微网站怎么做,公司网站和公众号有什么区别?
如何有效防御Web建站篡改攻击?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
javascript中的try catch异常捕获机制用法分析
php条件判断怎么写_ifelse和switchcase的使用区别【对比】
,网页ppt怎么弄成自己的ppt?
常州企业建站如何选择最佳模板?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
高防服务器如何保障网站安全无虞?
网站制作的步骤包括,正确网址格式怎么写?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
如何用VPS主机快速搭建个人网站?
无锡营销型网站制作公司,无锡网选车牌流程?
建站之星2.7模板快速切换与批量管理功能操作指南
佛山网站制作系统,佛山企业变更地址网上办理步骤?
详解jQuery停止动画——stop()方法的使用
外贸公司网站制作哪家好,maersk船公司官网?
,有什么在线背英语单词效率比较高的网站?
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
建站主机与服务器功能差异如何区分?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
如何快速上传自定义模板至建站之星?
*请认真填写需求信息,我们会在24小时内与您取得联系。