小程序 TS 封装API
通俗易懂不说废话,拿去用,看两遍就能理解。
1 const { baseUrl } = require('./env').dev;
2 const token = wx.getStorageSync('token') || '';
3 module.exports = {
4 request: function (url: string, method = "GET" as any, data: any) {
5 // wx.showLoading({
6 // title: '玩命加载中',
7 // })
8 return new Promise((resolve, reject) => {
9 wx.request({
10 url: baseUrl + url,
11 method: method,
12 data,
13 header: {
14 'Content-type': 'application/json;charset=utf-8',
15 'Authorization': 'Bearer ' + token,
16 },
17 success(res: any) {
18 console.log('res::', res)
19 if (res) {
20 resolve(res.data.data)
21 wx.hideLoading()
22 } else {
23 wx.showToast({
24 title: '接口有问题,请检查',
25 })
26 reject('接口有问题,请检查')
27 }
28 },
29 fail(err: any) {
30 console.log('err::', err)
31 wx.showToast({
32 title: '数据接口有问题',
33 })
34 reject('数据接口有问题')
35 }
36 })
37 })
38 },
39 loginCode: (data: any) => {
40 return new Promise((resolve, reject) => {
41 wx.request({
42 url: baseUrl + '/basic-management/app-api/app/admin/auth/login-code',
43 method: 'POST',
44 data,
45 header: {
46 'Content-type': 'application/json;charset=utf-8'
47 },
48 success(res: any) {
49 if (res) {
50 // wx.setStorageSync('token', res.data.data.token)
51 wx.setStorage({
52 key: "token",
53 data: res.data.data.token
54 })
55 resolve(res.data.data)
56 wx.hideLoading()
57 } else {
58 wx.showToast({
59 title: '接口有问题,请检查',
60 })
61 reject('数据接口有问题')
62 }
63 },
64 fail(err: any) {
65 console.log('err::', err)
66 wx.showToast({
67 title: '数据接口有问题',
68 })
69 reject('数据接口有问题')
70 }
71 })
72 })
73 },
74 setChangeTenant: (data: any) => {
75 return new Promise((resolve, reject) => {
76 wx.request({
77 url: baseUrl + '/basic-management/app-api/app/admin/auth/change-tenant',
78 method: 'POST',
79 data,
80 header: {
81 'Content-type': 'application/json;charset=utf-8',
82 'Authorization': 'Bearer ' + token,
83 },
84 success(res: any) {
85 console.log('res::', res)
86 if (res) {
87 resolve(res.data.data)
88 wx.hideLoading()
89 } else {
90 wx.showToast({
91 title: '接口有问题,请检查',
92 })
93 reject('接口有问题,请检查')
94 }
95 },
96 fail(err: any) {
97 console.log('err::', err)
98 wx.showToast({
99 title: '数据接口有问题',
100 })
101 reject('数据接口有问题')
102 }
103 })
104 })
105 }
106 }
小程序 TS 封装API的更多相关文章
- 微信小程序的Web API接口设计及常见接口实现
微信小程序给我们提供了一个很好的开发平台,可以用于展现各种数据和实现丰富的功能,通过小程序的请求Web API 平台获取JSON数据后,可以在小程序界面上进行数据的动态展示.在数据的关键 一环中,我们 ...
- 「小程序JAVA实战」小程序和后台api通信(28)
转自:https://idig8.com/2018/08/19/xiaochengxujavashizhanxiaochengxuhehoutaiapitongxin28/ 开发最重要的就是实操! 小 ...
- 微信小程序:封装全局的promise异步调用方法
微信小程序:封装全局的promise异步调用方法 一:封装 function POST(url, params) { let promise = new Promise(function (resol ...
- 小程序-demo:小程序示例-page/api
ylbtech-小程序-demo:小程序示例-page/api 以下将演示小程序接口能力,具体属性参数详见小程序开发文档. 1. page/component返回顶部 1. a) .js Page({ ...
- 微信小程序简单封装图片上传组件
微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...
- 第三篇、微信小程序-网络请求API
wx.request(OBJECT)发起的是https请求.一个微信小程序,同时只能有5个网络请求连接. OBJECT参数说明: 效果图: net.js Page({ data:{ result:{} ...
- 整合微信小程序的Web API接口层的架构设计
在我前面有很多篇随笔介绍了Web API 接口层的架构设计,以及对微信公众号.企业号.小程序等模块的分类划分.例如在<C#开发微信门户及应用(43)--微信各个项目模块的定义和相互关系>介 ...
- 小程序重新封装打印函数console.log
习惯性使用console.log打印获取到的数据,信息等,然后上星期大佬看见了说怎么那么多打印信息出来,线上那个也是吗?问我能不能线上的就不打印出来? 我就说那就封装一个打印函数呗. 重写一个没问题, ...
- 小程序引入百度api天气预报
先看下最终的效果(默认可以获得未来三天数据): 第一:首先准备条件(必须): 1.小程序已认证,有appID 2.必须把https://api.map.baidu.com 添加到小程序的合法域名列表中 ...
- 微信小程序之封装http请求
下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, metho ...
随机推荐
- SpringBoot多数据源yaml配置
1.配置多数据源 pom文件 <dependency> <groupId>com.baomidou</groupId> <artifactId>dyna ...
- mysqli语句的用法
改用了PHP7的环境后 mysql语句好像就不能用了.. 有点懵逼 就写一下该怎么用以免遗忘 ======= 1 链接数据库 $link=mysqli_connect('127.0.0.1:xxxx' ...
- Servlet的学习之路
一.什么是什么Servlet? Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程 ...
- python补全用法,windows环境和linux环境
一.windows中python tab具体如下: 1.python3环境装好后,初始环境是没有装readline模块的,先装它. pip install pyreadline 2.在在python的 ...
- python 连接蓝牙设备并接收数据
python 连接蓝牙设备 原始内容 # %% from binascii import hexlify import struct from bluepy.btle import Scanner, ...
- pytest用例管理框架实战(基础篇)
先安装pip install pytest pytest用例管理框架 默认规则: 1.py文件必须以test_开头或者_test结尾 2.类名必须以test开头 3.测试用例必须以test_开头 ge ...
- Linux0.11源码学习(一)
Linux0.11源码学习(一) linux0.11源码学习笔记 参考资料:https://github.com/sunym1993/flash-linux0.11-talk 源码查看:https:/ ...
- BGF bivariate generating function 双变量生成函数
目录 定义 BGF bivariate generating function horizonal GF 和 vertical GF 例子 组合数 horizonal GF vertical GF ( ...
- cost function 成本函数
cost function 成本函数 cost function-成本函数 1.目标 :实现和探索具有一个变量的线性回归的成本函数. import numpy as np %matplotlib wi ...
- Java面试——专业技能
目录 一.简单讲下 Java 的跨平台原理 二.装箱与拆箱 三.实现一个拷贝文件的工具类使用字节流还是字符流 四.介绍下线程池 五.JSP和 Servlet 有哪些相同点和不同点 六.简单介绍一下关系 ...