通俗易懂不说废话,拿去用,看两遍就能理解。

  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的更多相关文章

  1. 微信小程序的Web API接口设计及常见接口实现

    微信小程序给我们提供了一个很好的开发平台,可以用于展现各种数据和实现丰富的功能,通过小程序的请求Web API 平台获取JSON数据后,可以在小程序界面上进行数据的动态展示.在数据的关键 一环中,我们 ...

  2. 「小程序JAVA实战」小程序和后台api通信(28)

    转自:https://idig8.com/2018/08/19/xiaochengxujavashizhanxiaochengxuhehoutaiapitongxin28/ 开发最重要的就是实操! 小 ...

  3. 微信小程序:封装全局的promise异步调用方法

    微信小程序:封装全局的promise异步调用方法 一:封装 function POST(url, params) { let promise = new Promise(function (resol ...

  4. 小程序-demo:小程序示例-page/api

    ylbtech-小程序-demo:小程序示例-page/api 以下将演示小程序接口能力,具体属性参数详见小程序开发文档. 1. page/component返回顶部 1. a) .js Page({ ...

  5. 微信小程序简单封装图片上传组件

    微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...

  6. 第三篇、微信小程序-网络请求API

    wx.request(OBJECT)发起的是https请求.一个微信小程序,同时只能有5个网络请求连接. OBJECT参数说明: 效果图: net.js Page({ data:{ result:{} ...

  7. 整合微信小程序的Web API接口层的架构设计

    在我前面有很多篇随笔介绍了Web API 接口层的架构设计,以及对微信公众号.企业号.小程序等模块的分类划分.例如在<C#开发微信门户及应用(43)--微信各个项目模块的定义和相互关系>介 ...

  8. 小程序重新封装打印函数console.log

    习惯性使用console.log打印获取到的数据,信息等,然后上星期大佬看见了说怎么那么多打印信息出来,线上那个也是吗?问我能不能线上的就不打印出来? 我就说那就封装一个打印函数呗. 重写一个没问题, ...

  9. 小程序引入百度api天气预报

    先看下最终的效果(默认可以获得未来三天数据): 第一:首先准备条件(必须): 1.小程序已认证,有appID 2.必须把https://api.map.baidu.com 添加到小程序的合法域名列表中 ...

  10. 微信小程序之封装http请求

    下面将封装http请求服务部分的服务以及引用部分 // 本服务用于封装请求 // 返回的是一个promisepromise var sendRrquest = function (url, metho ...

随机推荐

  1. Kubernetes(k8s)pod详解

    一.简介 在Kubernetes集群中,Pod是所有业务类型的基础,也是K8S管理的最小单位级,它是一个或多个容器的组合.这些容器共享存储.网络和命名空间,以及如何运行的规范.在Pod中,所有容器都被 ...

  2. 无法将类 org.example.sh.utils.PageInfo<T>中的构造器 PageInfo应用到给定类型;

    是因为没有在工具类中加入构造器, @Data @NoArgsConstructor @AllArgsConstructor @ToString

  3. keshe第三周

    本周尝试在openeuler中运行java代码 实现bc库和crypto.gmsm 如下: 实现gmlib C语言库

  4. nginx配置权重,ip_hash....

    nginx为后端web服务器(apache,nginx,tomcat,weblogic)等做反向代理 几台后端web服务器需要考虑文件共享,数据库共享,session共享问题.文件共享可以使用nfs, ...

  5. DataX Web可视化分布式调度数据同步系统

    因项目需要,结合目前参与的项目,以及个人技术能力范围,组合研发一套web可视化数据同步系统,正式名称:DataXP. 项目背景:接触过阿里云这类大数据平台,对于中大型项目以及需要与外部系统对接数据的情 ...

  6. 【Beat】Scrum Meeting 4

    时间:2021年6月29日 1.各个成员今日完成的任务以及贡献小时数 姓名 今日完成任务 贡献小时数 鑫 继续进行bug的修改 4 荣娟 继续进行bug的修改 4 亚楠 继续进行bug的修改 4 桂婷 ...

  7. 嵌入式数据库 sqllite & h2  utils

    使用场景: 简单脚本,但是有需要数据记录. (使用前升级下版本) 我的使用: 老机器,老项目,jkd6,  需要记录 SqlLiteUtils package com.sea.edi.listener ...

  8. 2023 年最新最全的 React 面试题

    React 作为前端使用最多的框架,必然是面试的重点.我们接下来主要从 React 的使用方式.源码层面和周边生态(如 redux, react-router 等)等几个方便来进行总结. 1. 使用方 ...

  9. 3分钟带你了解Hadoop是什么

    Hadoop是一种开源的分布式计算框架,它在Google的MapReduce论文发表后大受欢迎,并被广泛应用.Hadoop框架包括一个分布式文件系统(HDFS),它允许用户以分布式方式存储和管理大量数 ...

  10. MySQL 中 explain关键字

    更多内容,前往IT-BLOG explain关键字可以模拟优化器执行 SQL 查询语句,从而知道 MySQL 是如何处理 SQL 语句的.分析查询语句或表结构的性能瓶颈.执行语句:explain + ...