咨询热线:15535715731 联系人:王耀辉 地址:烟台市芝罘区胜利南路453号
微信小程序网络封装-简单高效
来源:利赢国际网址 发布时间:2019-07-17 点击量:292
废话引言
小程序虽然出世很久了,但一直没怎么接触到小程序开发。吉他兴趣班老师想弄一个小程序发布课程信息和打卡功能,作为IT一员就自愿加入了这个小程序开发小组中。虽然小程序面向的是前端工程师,但作为移动端程序猿感觉甚是友好,加上有点前端基础就更是觉得入手很easy啦。
微信小程序的网络请求很便捷,直接调用就可以了。但最好还是根据需求,处理一些参数回调信息,进行二次封装,为整个小程序应用直接提供调方法接口岂不是更好?
利用网络请求的一贯思维,分三个回调:onStart:开始请求, onSuccess:请求成功回调, onFailed:请求失败回调, 意思就是字面意思~
netUtil.js 网络请求工具封装
在utils目录下创建一个netUtil.js文件
/** * 供外部post请求调用 */function post(url, params, onStart, onSuccess, onFailed) { request(url, params, "POST", onStart, onSuccess, onFailed);}/** * 供外部get请求调用 */function get(url, params, onStart, onSuccess, onFailed) { request(url, params, "GET", onStart, onSuccess, onFailed);}/** * function: 封装网络请求 * @url URL地址 * @params 请求参数 * @method 请求方式:GET/POST * @onStart 开始请求,初始加载loading等处理 * @onSuccess 成功回调 * @onFailed 失败回调 */function request(url, params, method, onStart, onSuccess, onFailed) { onStart(); //request start wx.request({ url: url, data: dealParams(params), method: method, header: { "content-type": "application/json" }, success: function (res) { if (res.data) { /** start 根据需求 接口的返回状态码进行处理 */ if (res.data.error_code == 0) { onSuccess(res.data); //request success } else { onFailed(res.data.msg); //request failed } /** end 处理结束*/ } }, fail: function (error) { onFailed(""); //failure for other reasons } })}/** * function: 根据需求处理请求参数:添加固定参数配置等 * @params 请求参数 */function dealParams(params) { return params;}module.exports = { postRequest: post, getRequest: get,}
小案例使用说明:笑话大全接口
简要描述:
用户注册接口请求URL:
http://v.juhe.cn/joke/content/list.php
请求方式:
GET参数:
参数名 | 必选 | 类型 | 说明 |
---|---|---|---|
sort | 否 | string | 降序“des”,升序“asc” |
page | 否 | int | 页数,默认1 |
pageSize | 否 | int | 默认每页加载20条数据 |
time | 是 | string | 时间戳10位 |
key | 是 | string | appkey |
返回示例
{ "error_code": 0, "reason": "Success", "result": { "data": [ { "content": "某先生是地方上的要人。一天,他像往常一样在书房里例览当日报纸,突然对妻子大声喊道:喂,安娜,你看到今天早报上的流言蜚语了吗?真可笑!他们说,你收拾行装出走了。你听见了吗?安娜、你在哪儿?安娜?啊!", "hashId": "90B182FC7F74865B40B1E5807CFEBF41", "unixtime": 1418745227, "updatetime": "2014-12-16 23:53:47" }, { "content": "有一天我看着报纸,小声嘟囔着一篇文章的题目鸟儿也有外语,丈夫听了对了一句:鸟儿当然也有‘外遇’。原来丈夫听错了,我笑得前仰后合。", "hashId": "206F5C52FD2ED94772CBC66C8AC61F2A", "unixtime": 1418745227, "updatetime": "2014-12-16 23:53:47" } ] }}
小程序页面js文件中引入netUtil
var netUtil = require("../../utils/network.js"); //require引入Page({ data: { jokeList: {} }, onLoad: function (options) { var url = "http://v.juhe.cn/joke/content/list.php"; var params = { sort: "", page: 1, pagesize: 5, time: "1418816972", key: "746dfdb4cd8445d30a8f915fd2b5f76b", } netUtil.getRequest(url, params, this.onStart, this.onSuccess, this.onFailed); //调用get方法情就是户数 }, onStart: function () { //onStart回调 wx.showLoading({ title: "正在加载", }) }, onSuccess: function (res) { //onSuccess回调 wx.hideLoading(); this.setData({ jokeList: res.result.data //请求结果数据 }) }, onFailed: function (msg) { //onFailed回调 wx.hideLoading(); if (msg) { wx.showToast({ title: msg, }) } },})
在wxml文件中绑定请求的笑话大全列表:jokeList
<view> <block wx:for="{{jokeList}}" wx:for-item="item" wx:key="idx"> <view > <text>{{item.content}}</text> </view> </block></view>
相关产品
-
但尽管这样,作为一个实(贫)在(穷)的车评人,我还是建议简单把DS7放在20-30万的价格区间里随便对比一下,从一些用车的本质问题出发来评定一下这款车型,毕竟车子除了撩妹,更多的时候还是用来开的嘛。
-
在动力上,法拉利458Spider Speciale将使用一台4.5L V8自然吸气发动机,这款发动机的最大功率为605马力,峰值扭矩则为540牛·米。(文/陈浩)
-
去年6月,马里反政府武装组织“阿扎瓦德协调联盟”在马里首都巴马科正式与马里政府签署《和平与和解协议》。在此之前,第三方“平台联盟”也于去年5月,同马里政府签署了同样的和平与和解协议。
-
——量子纠缠,类似孙悟空和他的分身,二者无论距离多远都“心有灵犀”。当两个微观粒子处于纠缠态,不论分离多远,对其中一个粒子的量子态做任何改变,另一个会立刻感受到,并做相应改变。
-
外观方面,外形与老款相比有了很大的变化,车头的3D直瀑式镀铬隔栅与U形引擎盖、U形前进气口巧妙融为“三盾一体”,两枚钻石般的大灯相比老款更加有型。凯越尾部更显时尚,通体红的尾灯造型非常有创意。再配合车身线条沿袭黄金比例美学主张,充分诠释了别克家族外形设计理念与精髓。
-
与众不同、独辟蹊径的传奇演绎,波澜壮阔的战争场景,老中青三代演员的黄金组合,中法导演的倾力合作,一代天骄成吉思汗这一传奇人物的全新演绎,注定会让电影《战神纪》给当代观众带来不一样的视听体验。4月28日,让我们一起走进影院见证传奇的诞生。
-
旅行社21日上午就发现复兴航空订位系统已死锁,复兴航空原本对外说法是订位系统有问题,之后又紧急通知旅行社,因航班调度,全天订位死锁,让外界感到不寻常。
-
最后,张靓颖含泪演唱《终于等到你》,她坦言自己并不喜欢哭,因为“每次哭都唱不好,而且很丑”,此时台下大批观众高喊其男友的名字,但张靓颖并未回应。
热点资讯
- 2018年上半年网约车报告:补贴叫停后,美团和滴滴的数据如何变化?2019-07-17
- 十五个工具!雷军称赞多功能火刀:家庭旅行的必要条件2019-07-17
- 日立拟冻结英国新建核电站计划日本核电出口全部触礁2019-07-17
- 杭州一科技企业在硅谷买楼建创新中心2019-07-17
- 微信小程序“功能直达”正式开放2019-07-17
- 科技对抗恶魔果实!《海贼王:寻秘世界》原创角色情报曝光2019-07-17
- 北京东方组织结构调整:3C电子消费品零售企业集团的建立2019-07-17
- 当美国人害怕中国时,他们真正害怕的是什么?2019-07-17