小程序 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 ...
随机推荐
- 集群与iptables
Iptables 五链四表执行关系如图所示,容器环境最常用的就是filter和nat表 加上各种自定义的链插入到各个环节,拦截流量做各种控制 filter表:匹配数据包以进行过滤 nat表:修改数据包 ...
- TAP 交换机
首发第一篇,就想分享一下TAP交换机的网络设备,为啥要谈这个呢,因为是一个冷门产品,大厂一般都没有,有也不作为重点产品推介,所以关注的人少,希望能给有这方面需求的人,又苦于找不到介绍资料的人以帮助.在 ...
- MOBIUS: Towards the Next Generation of Query-Ad Matching in Baidu's Sponsored Search——百度下一代搜索广告系统
简介 传统的广告最终的呈现需要经过召回与排序两个阶段,百度的搜索架构则采用三层漏斗状,如图1所示.最上面的一层用于筛选出和用户查询最相关的一部分广告,将整个候选广告集从亿级降到千级:下面两层是排序阶段 ...
- imx6ull调试记录——开发环境搭建
搭建开发环境之网络环境 代码编译环境准备 换源 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo vim /etc/apt/so ...
- java生态下的后端开发都有哪些技术栈?
前言 我08年毕业,那时(2003-2010)C#还比较时髦的,大学跟着老师进修的,毕业后就从事winform窗体应用程序开发.慢慢的web网站兴起,就转到aps.net开发,再到后来就上了另一艘船( ...
- InstructPix2Pix: 动动嘴皮子,超越PS
摘要:InstructPix2Pix提出了一种使用文本编辑图像的方法:给定输入图像和编辑指令,告诉模型要做什么,模型将遵循这些指令来编辑图像. 本文分享自华为云社区<InstructPix2Pi ...
- 一次.net code中的placeholder导致的高cpu诊断
背景 最近一位朋友找到我,让我帮看他们的一个aspnet core service无端cpu高的问题.从描述上看,这个service之前没有出现过cpu高的情况,最近也没有改过实际的什么code.很奇 ...
- salesforce零基础学习(一百一十六)workflow -> flow浅谈
本篇参考: https://help.salesforce.com/s/articleView?id=sf.migrate_to_flow_tool_considerations_workflow.h ...
- 暗夜发光,独自闪耀,盘点网页暗黑模式(DarkMode)下的特效和动效,CSS3实现
众所周知,网页的暗黑模式可以减少屏幕反射和蓝光辐射,减少眼睛的疲劳感,特别是在夜间使用时更为明显.其实暗黑模式也给霓虹灯效应(Neon Effect)提供了发挥的环境. 霓虹灯效应是一种视觉效果,其特 ...
- C/C++编译构建相关问题
名词辨析 GNU GNU's Not Unix!的递归缩写 一个自由的操作系统,起源于GNU计划,希望发展出一套完整的开放源代码操作系统来取代Unix 基本组成包括: GNU编译器套装(GCC) GN ...