废话引言
小程序虽然出世很久了,但一直没怎么接触到小程序开发。吉他兴趣班老师想弄一个小程序发布课程信息和打卡功能,作为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
否
string
默认每页加载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 class='joke_container'> <text>{{item.content}}</text> </view> </block> </view>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 魔兽世界wlk敏锐贼一键输出宏是什么 wlk敏锐贼一键输出宏介绍
- 李逸朗2007-李威乐[英皇娱乐][WAV+CUE]
- DavidVersace-EyetoEye(2024)[24-44,1]
- SimoneLamsma,RobertKulek-Mendelssohn,Janacek,Schumann-SonatasforViolinandPiano【SAC
- 《街头篮球》大动作:新增五大服务器节点 优化玩家体验
- 任天堂宣布推出音乐APP!仅面向NSO订阅用户
- 《马路RPG:兄弟齐航》新预告!兄弟携手海岛冒险
- 王子鸣.2009-永远【九洲】【WAV分轨】
- 杭天琪.2002-水与火的缠绵【泰达】【WAV+CUE】
- 邱锋泽.2024-COlOR.Free【发现梦想】【FLAC分轨】
- 群星 《10年朋友Vol.8》滚石台湾版[WAV+CUE][1.G]
- 群星《2024好听新歌31》十倍音质 U盘音乐 [WAV分轨][1.1G]
- 群星《全天后》华纳[WAV+CUE][1.1G]
- 许乐《声愿HQCD》[正版原抓WAV+CUE]
- 黄凯芹《给你留念》头版限量编号MQA-UHQCD2024[低速原抓WAV+CUE]