微信小程序常用API封装
主要是为了在项目中使用时 不需要每次都通过wx. 获取 使得同样代码冗余
主要是为了在项目中使用时 不需要每次都通过wx. 获取 使得同样代码冗余
主要是为了在项目中使用时 不需要每次都通过wx. 获取 使得同样代码冗余
主要是为了在项目中使用时 不需要每次都通过wx. 获取 使得同样代码冗余
/*** @return {Object} 获取系统信息*/
export let systemInfo = function () {return new Promise((resolve, reject) => {wx.getSystemInfo({success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};
/*** @return {Object} 获取小程序登录code*/
export let wxLogin = function () {return new Promise((resolve, reject) => {wx.login({success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @return {Object} 校验小程序登录态*/
export let checkSession = function () {return new Promise((resolve, reject) => {wx.checkSession({success() {//session_key 未过期,并且在本生命周期一直有效resolve({success: true,});},fail() {// session_key 已经失效,需要重新执行登录流程resolve({success: false,});},});});
};/*** @param {Obj} opt 参数* @return {Object} 获取用户的当前设置权限。*/
export let getUserSetting = function () {return new Promise((resolve, reject) => {wx.getSetting({success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Obj} opt 参数* @return {Object} 打开用户权限列表*/
export let openSetting = function () {return new Promise((resolve, reject) => {wx.openSetting({success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Obj} opt 参数* @return {Object} 判断用户的具体的权限 是否授权* @description 进行取值* let AllAuth=await getAllAuth()* AllAuth.get('userInfo').value 具体的权限* AllAuth.get('userInfo').type 代表是否是第一次 true*/
export let getUserAllAuth = function () {return new Promise((resolve, reject) => {wx.getSetting({success: (res) => {let _res = new Map();//用户信息if (res.authSetting && "scope.userInfo" in res.authSetting) {_res.set("userInfo", { value: res.authSetting["scope.userInfo"] });} else {_res.set("userInfo", { value: false, type: true });}//定位信息if (res.authSetting && "scope.userLocation" in res.authSetting) {_res.set("userLocation", {value: res.authSetting["scope.userLocation"],});} else {_res.set("userLocation", { value: false, type: true });}//开启相册权限if (res.authSetting && "scope.writePhotosAlbum" in res.authSetting) {_res.set("writePhotosAlbum", {value: res.authSetting["scope.writePhotosAlbum"],});} else {_res.set("writePhotosAlbum", { value: false, type: true });}resolve(_res);},fail: () => {let _resvs = new Map();_resvs.set("userInfo", { value: false });_resvs.set("userLocation", { value: false });_resvs.set("writePhotosAlbum", { value: false });resolve(_resvs);},});});
};/*** @param {Obj} opt 参数* @return {Object} 获取用户基本信息*/
export let getUserInfo = function () {return new Promise((resolve, reject) => {wx.getUserInfo({success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Obj} opt 参数* @return {Object} 获取用户位置信息*/
export let getLocation = function (type) {return new Promise((resolve, reject) => {wx.getLocation({type,success: function (res) {resolve(res);},fail: function (res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Obj} opt 参数* @return {Object} 打开微信地图*/
export let openLocation = function (latitude, longitude) {return new Promise((resolve, reject) => {wx.openLocation({latitude,longitude,scale: 18,success: function (res) {resolve(res);},fail: function (res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Obj} opt 参数* @return {Object} 弹框*/
export let showModal = function (opt) {opt = Object.assign({title: "",content: "",showCancel: true,cancelText: "取消",cancelColor: "#000000",confirmText: "确认",confirmColor: "#0370c8",},opt);return new Promise((resolve, reject) => {wx.showModal({...opt,success: function (res) {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @param {String} txt 提示文本* @param {String} time 显示时长* @return {Object} 提示信息*/
export let showToast = function (txt, time) {return wx.showToast({title: txt || "",icon: "none",duration: 2000 || time,});
};/*** @param {String} txt 提示文本* @return {Object} loading*/
export let showLoading = function (txt) {return wx.showLoading({title: txt || "",mask: true,});
};/*** @param {String} txt 提示文本* @return {Object} 隐藏loading*/
export let hideLoading = function (txt) {return wx.hideLoading();
};/** 图片上传*/
export let uploadFile = function (opt, tempFilePaths) {return new Promise((resolve, reject) => {wx.uploadFile({url: (opt && opt.url) || "",filePath: tempFilePaths,header: {"Content-Type": "multipart/form-data",},name: "Filedata",formData: opt.data || {},success: function (res) {resolve(res);},fail(res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {String} url 图片地址* @return {Object} 选择图片*/
export let chooseImage = function (url) {return new Promise((resolve, reject) => {wx.chooseImage({count: 1, // 默认9sizeType: ["original", "compressed"], // 可以指定是原图还是压缩图,默认二者都有sourceType: ["album", "camera"], // 可以指定来源是相册还是相机,默认二者都有success(res) {// res.tempFilePaths [] 多个resolve(res);},fail(res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {String} url 图片地址* @return {Object} 下载图片*/
export let downloadFile = function (url) {return new Promise((resolve, reject) => {wx.downloadFile({url: url,success(res) {// res.tempFilePathif (res.statusCode === 200) {resolve(res);}else{res.failMsg = "0000";resolve(res);}},fail(res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {String} url 文件地址* @return {Object} 保存文件*/
export let saveFile = function (url) {return new Promise((resolve, reject) => {wx.saveFile({tempFilePath: url,success(res) {// res.savedFilePathresolve(res);},fail(res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {String} url 预览pdf* @return {Object} 预览*/
export let openDocument = function (url) {return new Promise((resolve, reject) => {wx.openDocument({filePath: url,showMenu:true,success(res) {resolve(res);},fail(res) {res.failMsg = "0000";resolve(res);},})});
};/*** @param {Object} res 图片信息* @return {Object} 保存图片*/
export let saveImage = function (tempFilePath) {return new Promise((resolve, reject) => {wx.saveImageToPhotosAlbum({filePath: tempFilePath,success(res) {resolve(res);},fail(res) {res.failMsg = "0000";resolve(res);},});});
};/*** @param {Object} opt 支付需要的参数* @param {String} timeStamp 支付需要的参数* @param {String} nonceStr 支付需要的参数* @param {String} package 支付需要的参数* @param {String} signType 支付需要的参数* @param {String} paySign 支付需要的参数* @return {Object} 支付*/
export let requestPayment = function (opt) {console.log(opt);return new Promise((resolve, reject) => {wx.requestPayment({...opt,success: function (res) {resolve(res);},fail: function (res) {res.failMsg = "0000";resolve(res);},});});
};/*** @return {Object} 获取小程序网络类型*/
export let getNetworkType = function () {return new Promise((resolve, reject) => {wx.getNetworkType({success: (res) => {resolve(res.networkType);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** @return {Object} 监听网络状态变化事件*/
export let onNetworkStatusChange = function () {return new Promise((resolve, reject) => {wx.onNetworkStatusChange((res) => {resolve(res);});});
};/*** @return {Object} 拨打电话*/
export let makePhoneCall = function (phoneNumber) {return new Promise((resolve, reject) => {wx.makePhoneCall({phoneNumber,success: (res) => {resolve(res);},fail: (res) => {res.failMsg = "0000";resolve(res);},});});
};/*** 微信的跳转* @param {String} type 跳转方式* @param {String} url 跳转地址*/
export let JumpRoute = function (type, url) {switch (type) {case "nav":wx.navigateTo({ url });break;case "tab":wx.switchTab({ url });break;case "reL":wx.reLaunch({ url });break;case "reD":wx.redirectTo({ url });break;case "back":wx.navigateBack({ delta: url || 1 });break;}
};
微信小程序常用API封装相关推荐
- 微信小程序-常用api
文章目录 微信小程序-常用api 路由 wx.switchTab(Object object) wx.navigateTo(Object object) wx.navigateBack(Object ...
- 【小程序开发必备】微信小程序常用API全介绍,附示例代码和使用场景
文章目录 1.网络请求相关API 1.1 wx.request 1.2 wx.uploadFile 1.3 wx.downloadFile 1.4 wx.connectSocket 2.页面跳转相关A ...
- 微信小程序常用api总结
内容待写... ≧◔◡◔≦ 滑到底啦~ // 1.0 小程序接收传递过来的参数onLoad: function (options) {var str= options.str; //接收到的参数 st ...
- 【小程序】微信小程序常用api的使用,附案例(建议收藏)
1- 前言 这是微信小程序常用的几个API,特地总结一下: 学会使用 微信官方文档 · 小程序 2- 界面 2.1 wx.setNavigationBarTitle() 标题栏文本 wx.setNav ...
- 微信小程序-常用API开发技巧学习笔记
常用API开发技巧学习笔记 第一章 认识微信小程序 前后端分离的开发方式 小程序的特点 小程序对开发者的影响 学习小程序需要的基础 第二章 小程序环境搭建与开发工具介绍 小程序开发环境 没有小程序号对 ...
- 微信小程序常用api使用
小程序提供了一个简单.高效的应用开发框架和丰富的组件及API,帮助开发者在微信中开发具有原生 APP 体验的服务.本文提及的案例为小程序搭建时常用种类,如需全面了解,可查阅官方文档(官网->首页 ...
- 从0到一开发微信小程序(6)—小程序常用API
文章目录 其他相关文章 1.小程序API 1.1.路由 1.1.1.navigateTo(保留当前页面,跳转到应用内的某个页面,可以带参数) 1.1.2.redirectTo(关闭当前页面,跳转到应用 ...
- 【微信小程序控制硬件 第12篇-项目篇】微信小程序蓝牙控制硬件应如何开始动手?为您全面解析微信小程序蓝牙API的使用;(附带demo)
[微信小程序控制硬件第1篇 ] 全网首发,借助 emq 消息服务器带你如何搭建微信小程序的mqtt服务器,轻松控制智能硬件! [微信小程序控制硬件第2篇 ] 开始微信小程序之旅,导入小程序Mqtt客户 ...
- 小程序promise封装post请求_微信小程序 es6-promise.js封装请求与处理异步进程
微信小程序 es6-promise.js封装请求与处理异步进程 下载es6-promise.js置于根目录下的libs文件夹下: 在根目录utils文件夹下新建httpsPromisify.js,即定 ...
最新文章
- 面试AI Lab能力测评
- JAVA Cloud微服务项目实战课程 SpringBoot 2.x +SpringCloud 微服务课程
- (Spring)整合mybatis
- 高效程序员的45个习惯 pdf_高效瑜伽人的 5 个习惯,你get到了几个?
- 项目经理这些技能,是项目成功的关键保障
- inux读取ISO文件或是光驱的方法--挂载
- pymongo 使用测试
- sphinx随笔记了一下
- bat与C语言混合编程,BAT与HTML混合编程的方法
- 筛选法求1到100以内的素数
- python编程项目中遇到的困难_python开发中遇到的常见问题,你们又是如何解决的呢?如何快速的学好python,有没有什么小技巧?...
- solid 铝型材框架_solidworks铝型材库
- excel运行python_使用PyXLL在Excel中执行Python脚本
- Android中Java与web通信
- XP下安装ubuntu双系统
- Docker容器化技术教程,24小时快速入门
- 黑马程序员--java基础--集合(三)
- HTB-Inject
- Linux内核调度子系统之EAS
- python中factorial什么意思,什么是备忘录,如何在Python中使用备忘录?
热门文章
- 北京地铁预约进站==》基于Python破解实现自动预约
- qsettings删除注册表_QSettings读写ini文件和注册表
- Android最好用的底部导航栏开发
- 从0到1!斗鱼数据产品搭建历程
- 编码-数据库不支持特殊符号,特殊符号插入数据库报错解决方法
- 打造自己的图像识别模型2——使用 TensorFlow Slim 微调模型
- 用Arduino玩转掌控板(ESP32):不到100行代码实现Siri语音控制 → WebServer应用示例...
- 【运筹学】运输问题建模 (某厂考虑安排某件产品在今后 4 个月的生产计划已知各月工厂的情况)
- 黄冈师范学院计算机学院专业,黄冈师范学院数学与计算机科学学院介绍
- 对酒店房间自助售货机的支付漏洞挖掘