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

  • 进料加工为什么要差额确认收入呢
  • 不征税收入有哪些类型
  • 代收代缴消费税会计分录
  • 小规模 季度
  • 季报利润总额是填本季度金额还是本年累计数
  • 预提费用在资产负债表哪个科目
  • 开业费用属于什么费用
  • 事业单位下属企业员工转事业编
  • 分公司独立核算企业所得税缴纳
  • 绿化工程账务处理支出
  • 公司利润如何提取避税
  • 建筑物加高违法么
  • 现金日记账支出是记借还是贷
  • 工资薪金所得适用的税率是
  • 企业所得税必须要季度缴纳吗
  • 增值税普通发票和普通发票的区别怎么交税
  • 增值税税控系统技术维护费计入什么科目
  • 同一笔销售业务的收入和成本
  • 小企业销售费用包括
  • 补提的增值税应该记在哪里
  • 支付征地补偿款怎么开具增值税发票
  • 财产清查的账务处理原则
  • win7系统无法启用网络发现
  • 联想Lenovo ThinkPad X13 Gen1
  • 总承包简易计税
  • 把桌面文件放到虚拟机
  • 2020 php 薪资
  • 代付收款入账是什么意思
  • 税收保全有哪些
  • pytorch模型转tflite
  • 福利企业即征即退优惠政策
  • 所有者权益的确认主要依赖于什么
  • 财务费用属不属于生产成本
  • 发放应付职工薪酬是借方还是贷方
  • 单位和个人交付的区别
  • 没签订采购合同怎么办
  • 贷款的银行卡叫什么
  • 社会保险个人部分计入什么科目
  • 金碟软件如何查看明细账
  • 补缴以前年度企业所得税如何做账
  • 外汇核销是什么意思
  • 企业取得政府奖励资金如何用
  • 一般纳税人会计做账的基本流程
  • 一次性发放的年终奖金应按工资薪金代扣代缴个税
  • 什么是现金什么是现金流
  • 医院如何开票
  • 无形资产摊销账面价值
  • 发票拿到了怎样作废
  • 房屋租赁合同印花税怎么计算
  • 票据质押如何做账
  • 顺风车没有发票是否合法
  • 预缴的附加税月末结转吗
  • 脚手架租赁费发票内容开劳务可以吗
  • 什么是现金等价物
  • Win Server 2008 r2 开启 Aero 桌面主题的方法
  • solaris教程
  • windows找不到文件请确定文件名是否正确
  • win8怎么添加我的电脑到桌面
  • vista win
  • linux系统讲解
  • os x10.11el capitan beta5更新了什么?os x10.11el capitan beta5下载地址
  • OS X 10.10 Yosemite的新特性与iOS联系更紧密
  • win8系统运行慢怎么办
  • win8创建我的电脑
  • Android性能优化 武汉招聘
  • js中正则表达式语法
  • perl调试
  • 全面了解中国历史英文
  • jquery实现复选框全选
  • framelayout布局
  • bootstrap基础
  • linux下socket编程常用头文件(推荐)
  • bash shell 语法
  • shell脚本中判断grep的结果
  • jquery访问本地html
  • 收到银行手续费发票怎么做分录
  • 安徽省合肥市地震多少级
  • 个人所得税申报是什么意思
  • 北京买车如何摇号
  • 增值税发票开具后多长时间可在查询平台查询到?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设