内容简介:5、尾言
- 微信小程序基础
-
熟悉
web
开发的朋友可能对axios
情有独钟。 -
wx.request
的二次封装 -
api
的集中管理和使用
2、配置 baseUrl
-
一般情况下,项目中的
baseUrl
域名前缀、登录的code
、用户信息
等都是配置在app.js
中
//app.js App({ onLaunch: function () { wx.login({ success: res => { if (res.code) { this.globalData.loginCode = res.code // 获取的code码,以进一步换取用户信息 // res: { // code: "061Zltjh1sXj6s0z96hh1Z1njh1Zltj5" // errMsg: "login:ok" // } } else { console.log('登录失败!' + res.errMsg) } } }) }, globalData: { userInfo: null, loginCode: null, baseUrl: 'https://...' } }) 复制代码
3、封装 wx.request
-
在小程序目录下建立
utils
文件夹,并在文件夹下创建request.js
文件
// request.js const request = (options) => { return new Promise((resolve, reject) => { const { data, method } = options if(data && method !== 'get') { options.data = JSON.stringify(data) } wx.request({ header: { 'Content-Type': 'application/json' }, ...options, success: function(res) { if(res.data.code === 2000) { resolve(res.data) } else { reject(res.data) } }, fail: function(res) { reject(res.data) } }) }) } export default request 复制代码
4、 api
的集中管理和使用
-
在小程序目录下建立
api
文件夹,并在文件夹下创建user.js
文件(文件名推荐按模块命名) -
用过
axios
的朋友接下来应该会感觉很熟悉
// user.js import request from '../utils/request.js' // baseUrl也可拼接在request.js中,当有多个鉴权模块,放在这里更灵活 const baseUrl = getApp().globalData.baseUrl export function apiLogin(data) { return request({ url: `${baseUrl}/user/login`, method: 'post', data }) } export function apiGetUserInfo() { return request({ url: `${baseUrl}/user/userInfo`, method: 'get' }) } export function apiModifyUserPassword(data) { return request({ url: `${baseUrl}/user/modifyPassword`, method: 'put', data }) } export function apiLogout() { return request({ url: `${baseUrl}/user/logout`, method: 'delete' }) } 复制代码
- 在页面中使用
// pages/login/login.js import { apiLogin } from '../../api/user.js' Page({ onLoad: function (options) { this.login() }, login() { apiLogin({ // api params }).then(res => { // handle success }).catch(error => { // handle error }) } }) 复制代码
5、尾言
-
由于涉及到
ES6
语法,需要在本地设置中开启ES6
转ES5
-
小程序开发过程中应注意
this
指向性问题。 - 感谢浏览,若有不足之处请指正,欢迎留言探讨。
以上所述就是小编给大家介绍的《微信小程序--wx.request封装和使用》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 小程序封装wx.request请求并创建接口管理文件
- 小程序封装路由文件和路由方法,5种路由方法全解析
- Hacker News热议:封装包那么多,程序员还用学习算法吗?
- WPF 使用 AppBar 将窗口停靠在桌面上,让其他程序不占用此窗口的空间(附我封装的附加属性)
- 封装JDBC—非框架开发必备的封装类
- SpringBlade 2.3.2 发布,增加 OSS 封装及单元测试封装
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
算法:C语言实现
塞奇威克 / 霍红卫 / 机械工业出版社 / 2009-10 / 79.00元
《算法:C语言实现(第1-4部分)基础知识、数据结构、排序及搜索(原书第3版)》细腻讲解计算机算法的C语言实现。全书分为四部分,共16章。包括基本算法分析原理,基本数据结构、抽象数据结构、递归和树等数据结构知识,选择排序、插入排序、冒泡排序、希尔排序、快速排序方法、归并和归并排序方法、优先队列与堆排序方法、基数排序方法以及特殊用途的排序方法,并比较了各种排序方法的性能特征,在进一步讲解符号表、树等......一起来看看 《算法:C语言实现》 这本书的介绍吧!
JS 压缩/解压工具
在线压缩/解压 JS 代码
XML、JSON 在线转换
在线XML、JSON转换工具