位置: 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)

  • 苹果xr微信变成夜间模式如何调回来(苹果xr微信变成黑色了)

    苹果xr微信变成夜间模式如何调回来(苹果xr微信变成黑色了)

  • vivo x27相册里的私密照片怎么找(vivox27相册里的照片显示时间吗)

    vivo x27相册里的私密照片怎么找(vivox27相册里的照片显示时间吗)

  • 抖音申诉无效还能解吗(抖音申诉无效还有抖币怎么办)

    抖音申诉无效还能解吗(抖音申诉无效还有抖币怎么办)

  • 华为手机取消悬浮键怎么办(华为官网手机)

    华为手机取消悬浮键怎么办(华为官网手机)

  • 我经常访问的主页怎么删除(我经常访问的主持人英语)

    我经常访问的主页怎么删除(我经常访问的主持人英语)

  • 为什么抖音改不了昵称(为什么抖音改不了名字)

    为什么抖音改不了昵称(为什么抖音改不了名字)

  • 苹果11pro max是什么基带(苹果11promax是什么芯片)

    苹果11pro max是什么基带(苹果11promax是什么芯片)

  • 青桔单车供电原理(青桔电动车怎么恢复供电)

    青桔单车供电原理(青桔电动车怎么恢复供电)

  • 诺基亚是什么系统软件(诺基亚属于什么手机)

    诺基亚是什么系统软件(诺基亚属于什么手机)

  • 键盘上大小写字母切换是哪个键(键盘上大小写字母转换键是)

    键盘上大小写字母切换是哪个键(键盘上大小写字母转换键是)

  • 手机卡老是没信号无服务是什么意思(手机卡老是没信号无服务重启后好了)

    手机卡老是没信号无服务是什么意思(手机卡老是没信号无服务重启后好了)

  • dcs与plc的区别(dcs和plc关系)

    dcs与plc的区别(dcs和plc关系)

  • 5.0ghz频段是什么意思(5.0 ghz频段)

    5.0ghz频段是什么意思(5.0 ghz频段)

  • 华为mate30怎么打开悬浮球(华为mate30怎么打开双系统)

    华为mate30怎么打开悬浮球(华为mate30怎么打开双系统)

  • 华为相机九宫格设置(华为相机九宫格设置图片教程)

    华为相机九宫格设置(华为相机九宫格设置图片教程)

  • 华为mate30可以面容支付吗(华为mate30支不支持面容支付)

    华为mate30可以面容支付吗(华为mate30支不支持面容支付)

  • 抖音评论区怎么变成黑色(抖音评论区怎么发语音消息)

    抖音评论区怎么变成黑色(抖音评论区怎么发语音消息)

  • 小米8夜光屏有啥用(小米夜光屏有什么用)

    小米8夜光屏有啥用(小米夜光屏有什么用)

  • 手机自带声卡怎么调(手机自带声卡怎么关)

    手机自带声卡怎么调(手机自带声卡怎么关)

  • dubal00和dubal20区别(dubal00是什么型号)

    dubal00和dubal20区别(dubal00是什么型号)

  • 抖音怎么取消显示年龄(抖音怎么取消显示买过的店)

    抖音怎么取消显示年龄(抖音怎么取消显示买过的店)

  • 黑鲨2pro支不支持无线充电(黑鲨2pro支不支持NFC)

    黑鲨2pro支不支持无线充电(黑鲨2pro支不支持NFC)

  • 投影如何无线连接笔记本(投影如何无线连接)

    投影如何无线连接笔记本(投影如何无线连接)

  • 苹果拉黑的电话在哪里(苹果拉黑的电话号码哪里看)

    苹果拉黑的电话在哪里(苹果拉黑的电话号码哪里看)

  • 苹果 x怎么滚动截屏(苹果x怎么滚动截屏长图片)

    苹果 x怎么滚动截屏(苹果x怎么滚动截屏长图片)

  • 8p是什么屏幕(苹果8屏幕多大尺寸)

    8p是什么屏幕(苹果8屏幕多大尺寸)

  • 应收账款余额百分比法会计分录
  • 酒类许可证过期了去哪里换证
  • 出售的固定资产当月计提折旧吗
  • 公司买车可以抵扣哪些税
  • 应收票据贴现的含义
  • 已经退款买家不退货怎么办
  • 原会计收入准则最新
  • 企业如何运用内部招募
  • 利润表中所得税怎么算
  • etc开了充值发票还可以开消费发票么?
  • 物业公司代收的电费差额收入
  • 筹备费用怎么扣税的
  • 公司按月工资怎么算
  • 事业单位事业收入和经营收入要上缴财政
  • 业务招待住宿进什么科目
  • 利息收入会计如何做账
  • 电脑折旧率计算公式
  • 偶然所得是什么科目
  • php unit
  • 对于接受捐赠的固定资产,其成本应当依次按照
  • 月末结转营业税金及附加分录
  • 弥补亏损需要注意的事项
  • PHP:session_name()的用法_Session函数
  • php readdir函数
  • 税控系统发票如何验旧
  • 内部审计范围有哪些
  • 分配结转制造费用时借方科目
  • setlang.exe - setlang是什么进程 有什么用
  • 试运行期间收入和成本怎么记账
  • 埃托沙国家公园发展观兽旅游的优势条件
  • 前端使用vue
  • php-mysql安装
  • River Avon in Bath, England (© Robert Harding World Imagery/Offset by Shutterstock)
  • php使用for循环计算1到100的奇数和
  • 原生微信小程序面试题
  • webpack插件执行顺序
  • 蓝桥杯大赛2021
  • 委托代销商品委托方和受托方会计分录
  • 逾期未退押金是否确认收入
  • 银行手续费发票未到怎样做账
  • php网站漏洞
  • 出口退税转内销还是转免税好
  • 劳务维修费怎么开票
  • 套期保值是什么意思举个例子
  • 理财产品怎么分类总结
  • 承兑汇票可以当现金用吗
  • 固定资产原值增加折旧怎么算
  • 应付账款的入账价值为未来偿还额
  • 退票凭证丢了怎么办
  • 无法收回的款项
  • 发票开错一个字还能报销吗?
  • 以前年度房租付了没计提
  • 职工福利费的扣除标准工资总额包括什么
  • 外贸采购的职责
  • 高速公路过路费增值税
  • 残保金新公司第一年免费吗
  • 行政事业单位负责人应当对本单位内部控制
  • 让渡是什么
  • 房地产企业收入确认条件税法
  • 结账前要做哪些准备工作
  • sql转换
  • 苹果macbook如何录屏
  • w3dbsmgr.exe是什么进程
  • win10教育系统
  • mac怎么找自己下载的应用
  • mac怎么共享打印机设备
  • 系统界面通知
  • win8切换到桌面的快捷键
  • pygame有哪些函数
  • 以下关于js说法错误的是
  • unity 静态函数
  • 安装下载应用
  • android 图片滚动
  • 安装了python2.7和3.6怎么切换版本
  • js写日期
  • js获取鼠标点击位置
  • 纳税是什么税
  • 吉林省国税局网站官网
  • 城镇土地使用税税率
  • 扬州 税务
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设