位置: IT常识 - 正文

记录转载:uni-app 请求 uni.request封装使用(uni appp)

编辑:rootadmin
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 对uni.request的一些共同参数进行简单的封装,减少重复性数据请求代码。方便全局调用。 先在目录下创建 utils 和 common 这2个文件夹 utils 是存放工具类的,common 用来放置常用方法的 之后在utils 中创 ... 这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

推荐整理分享记录转载:uni-app 请求 uni.request封装使用(uni appp),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:uni'app,uni-app入门到实战,uni-app官网,uni'app,uni-app navigateto,uni'app,uni-app入门到实战,uni-app官网,内容如对您有帮助,希望把文章链接给更多的朋友!

对uni.request的一些共同参数进行简单的封装,减少重复性数据请求代码。方便全局调用。

先在目录下创建 utils 和 common 这2个文件夹

记录转载:uni-app 请求 uni.request封装使用(uni appp)

utils 是存放工具类的,common 用来放置常用方法的

之后在utils 中创建 requset.js 用来放置 uni.request 的请求方法,在对其进行简单的封装。

requset.js 代码import operate from '../common/operate.js'// vuex 的使用 详情参考官网 https://uniapp.dcloud.io/vue-vueximport store from '../store/index.js'export default class Request {http(param) {// 请求参数var url = param.url,method = param.method,header = {},data = param.data || {},token = param.token || "",hideLoading = param.hideLoading || false;//拼接完整请求地址var requestUrl = operate.api + url;//拼接完整请求地址(根据环境切换)// var requestUrl = operate.api() + url;//请求方式:GET或POST(POST需配置// header: {'content-type' : "application/x-www-form-urlencoded"},)if (method) {method = method.toUpperCase(); //小写改为大写if (method == "POST") {header = {'content-type': "application/x-www-form-urlencoded"};} else {header = {'content-type': "application/json"};}}//加载圈if (!hideLoading) {uni.showLoading({title: '加载中...'});}// 返回promisereturn new Promise((resolve, reject) => {// 请求uni.request({url: requestUrl,data: data,method: method,header: header,success: (res) => {// 判断 请求api 格式是否正确if (res.statusCode && res.statusCode != 200) {uni.showToast({title: "api错误" + res.errMsg,icon: 'none'});return;}// 将结果抛出resolve(res.data)},//请求失败fail: (e) => {uni.showToast({title: "" + e.data.msg,icon: 'none'});resolve(e.data);},//请求完成complete() {//隐藏加载if (!hideLoading) {uni.hideLoading();}resolve();return;}})})}}

在common 中分别创建 operate.js 和 api.js

operate.js 用来放置请求接口 api 地址export default {//接口api: "http://192.168.208.126:8080",}根据小程序环境切换接口地址export default {//接口api: function() {let version = wx.getAccountInfoSync().miniProgram.envVersion;switch (version) {case "develop": //开发预览版return "https://www.baidu.com/"break;case 'trial': //体验版return "https://www.baidu.com/"break;case 'release': //正式版return "https://www.baidu.com/"break;default: //未知,默认调用正式版return "http://www.baidu.com/"break;}}使用方法一(全局请求)

在跟目录创建api文件夹:在创建api.js

api.js 是用来调用我们封装好的 uni.request ,并且统一管理请求接口,在后续开发中只需要在页面中调用 api.js中请求即可

import Request from '@/utils/requset.js'let request = new Request().http//全局定义请求头export default {// 请求样式classifyLeft: function(data) {return request({url: "/category/list", //请求头method: "GET", //请求方式data: data, //请求数据})},}/*请求样式:自定义名字: function(data) {return request({url: "/banner", //请求头method: "GET", //请求方式data: data, //请求数据token: token, // 可传hideLoading: false, //加载样式})},*/

api.js的调用可以在main.js 中进行全局调用,也可以在需要的页面中调用,可根据实际情况来决定是否全局 调用。下面只介绍全局调用

在mian.js中导入api.js1. 在main.js 中引入api.jsimport api from '@/common/api.js'Vue.prototype.$api = api2. 在页面中调用//不传参数this.$api.sendRequest().then((res) => {console.log(res);})//传参this.$api.sendRequest({参数}).then((res) => {console.log(res);})使用方法二(页面单独引入)

user.js 是用来调用我们封装好的 uni.request ,并且统一管理请求接口,在后续开发中只需要在页面中调用 user.js中请求即可

import Request from '@/utils/requset.js'import operate from '@/common/operate.js'let request = new Request().http// 按需引入的 请求头export const getUserInfo= function(data) {return request({url: "order/user ",method: "POST",data: data,token: operate.isToken()})}页面中使用//引入import {getUserInfo} from '@/api/user.js'//放入生命周期init() {//用户信息getUserInfo().then((res) => {console.log(res);})},

本文转载于:https://juejin.cn/post/7023983465892675614如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

本文链接地址:https://www.jiuchutong.com/zhishi/313167.html 转载请保留说明!

上一篇:phpcms上传图片传不了怎么办(phpcms任意文件上传)

下一篇:织梦DedeCMS转换WordPress方法(dede织梦怎么转成zblog)

  • 微信年度报告怎么生成2021(微信年度报告怎么查)

    微信年度报告怎么生成2021(微信年度报告怎么查)

  • 微信实名制认证怎么弄(微信实名制认证不了怎么回事)

    微信实名制认证怎么弄(微信实名制认证不了怎么回事)

  • 华为nova4能装联通的卡吗(华为nova4可以直接连接usb吗)

    华为nova4能装联通的卡吗(华为nova4可以直接连接usb吗)

  • kindle能用5v2a充电器(kindle能用5v3a充电器)

    kindle能用5v2a充电器(kindle能用5v3a充电器)

  • watch同步要多久(applewatch同步太慢)

    watch同步要多久(applewatch同步太慢)

  • 快手隐私用户的作品会在热门看到吗(快手隐私用户的粉丝还能看到隐私用户的点赞吗)

    快手隐私用户的作品会在热门看到吗(快手隐私用户的粉丝还能看到隐私用户的点赞吗)

  • 10代cpu用什么主板(10代cpu用什么主板好)

    10代cpu用什么主板(10代cpu用什么主板好)

  • 华为售后换新机的条件(华为售后换新机是翻新机吗)

    华为售后换新机的条件(华为售后换新机是翻新机吗)

  • 苹果11关机后闹钟会响吗(苹果11关机后闹钟不响)

    苹果11关机后闹钟会响吗(苹果11关机后闹钟不响)

  • 联想笔记本数字键和字母键切换方法(联想笔记本数字和字母如何切换)

    联想笔记本数字键和字母键切换方法(联想笔记本数字和字母如何切换)

  • 荣耀20pro怎么关闭开发者模式(荣耀20pro怎么关闭热门推荐)

    荣耀20pro怎么关闭开发者模式(荣耀20pro怎么关闭热门推荐)

  • iPhonexr长按电源键没法关机(iphonexr长按电源键没反应)

    iPhonexr长按电源键没法关机(iphonexr长按电源键没反应)

  • 微信提示被盗风险怎么解除(微信提示被盗风险怎么回事)

    微信提示被盗风险怎么解除(微信提示被盗风险怎么回事)

  • 普通耳机插电脑能当麦克风吗(普通耳机插电脑会坏吗)

    普通耳机插电脑能当麦克风吗(普通耳机插电脑会坏吗)

  • 手机怎么设置来电停机(手机怎么设置来消息亮屏)

    手机怎么设置来电停机(手机怎么设置来消息亮屏)

  • 如何使用拼多多优惠券(如何使用拼多多钱包里的钱)

    如何使用拼多多优惠券(如何使用拼多多钱包里的钱)

  • 为什么电脑屏幕上有条线(为什么电脑屏幕显示无信号)

    为什么电脑屏幕上有条线(为什么电脑屏幕显示无信号)

  • 快手一直闪退怎么办(快手经常闪退)

    快手一直闪退怎么办(快手经常闪退)

  • vivo怎么打开运动数据权限(vivo怎么打开运行的程序界面)

    vivo怎么打开运动数据权限(vivo怎么打开运行的程序界面)

  • 钉钉上抄送人怎么选(钉钉上抄送人怎么删除)

    钉钉上抄送人怎么选(钉钉上抄送人怎么删除)

  • 华为如何解除私人号码(华为手机怎么关闭私密模式)

    华为如何解除私人号码(华为手机怎么关闭私密模式)

  • vivos1pro是什么处理器(vivos1pro介绍)

    vivos1pro是什么处理器(vivos1pro介绍)

  • 怎么删除分隔符空白页(怎么删除分隔符产生的下一页)

    怎么删除分隔符空白页(怎么删除分隔符产生的下一页)

  • OpenCV实战(15)——轮廓检测详解(opencv.)

    OpenCV实战(15)——轮廓检测详解(opencv.)

  • 在外地预缴的印花税如何扣除
  • 生产税净额计算实例
  • 结构性存款现金流量表如何分类
  • 小规模纳税人租金发票开几个点
  • 跨月专用发票怎么冲销
  • 残疾人就业保障金申报时间
  • 债券折价发行的会计分录
  • 金税盘查发票明细
  • 增值税税率2019
  • 退回投资款转为借款怎么记账
  • 本期缴纳上期应缴税额
  • 汇总记账凭证会计核算组织形式适用于
  • 固定资产大修理的标准
  • 个人所得税税前扣除是什么意思
  • 抵押贷款合同印花税怎么算
  • 我国现行资源税的课税范围不包括
  • 固定资产后续支出
  • 可供出售债权投资
  • 材料含税价怎么算
  • 境外派遣员工境外所得税是什么时候申报?
  • 零售汽油费发票需要交印花税吗?
  • 电子发票详见清单怎么开
  • 理论增值额的含义
  • 增值税专票盖章盖在哪里
  • 一般纳税人开普票税率是多少
  • 发票勾选操作失败怎么回事
  • 其他应付款借方余额表示什么
  • 培训费是否能全额退款
  • 免征房产税是多少
  • 购买收益权如何缴税
  • 0x0000709怎么解决
  • 如何恢复微信语言聊天
  • PHP:iterator_apply()的用法_spl函数
  • php readfile
  • 捐赠支出汇算清缴需要调增吗
  • 二手办公楼交易税多少
  • 登记总账的科目有哪些
  • 建筑服务需要开外经证吗
  • h5链接js
  • thinkphp框架怎么用
  • 浪漫编程代码
  • php wechat
  • 企业以前年度亏损不可以用什么弥补
  • 飞机票抵扣进项税含民航发展基金吗
  • 没进项发票怎么办
  • 普票与专票的区别在哪?它各自的特点?
  • 资产负债表里长期股权投资是什么意思
  • javagui框架
  • 电子承兑对方拒绝签收多久能到账
  • 外汇收入需要缴纳增值税吗
  • 收到非税收入一般缴款书怎么分录
  • 处置子公司如何合并
  • 增值税开票系统怎么改开票人名字信息
  • 应付账款与应付票据结合的原则
  • 自然人系统如何恢复数据
  • 小规模纳税人发票可以抵扣吗
  • 无形资产的摊销方法
  • 商品销售折让怎么计算
  • 调整服务能力的策略不包括什么
  • 快速任务栏
  • windowxp一直在windowxp界面
  • 恢复双系统启动菜单
  • centos minio
  • win8双系统怎么删除一个
  • 文本框后缀
  • 分析师:董明珠让格力为豪赌买单
  • python的文件操作中找不到文件应该如何处理
  • 详解16型人格
  • 后台运行bat定时器程序示例分享
  • javascript运用
  • unity安卓手机游戏官网
  • 使用jquery实现的项目
  • windows ipython
  • javascript面向对象精要pdf下载
  • 浅析jQuery Ajax通用js封装
  • 所得税季度预缴,年度汇算清缴
  • 进口汽车增值税怎么算
  • 国家税务总局2016年17号公告
  • 100万元的人民币
  • 税的几个点是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设