当前位置: 首页 > news >正文

刚出炉热乎的。UniApp X 封装 uni.request

HBuilder X v4.66 当前最新版本

由于 uniapp x 使用的是自己包装的 ts 语言 uts。目前语言还没有稳定下来,各种不支持 ts 各种报错各种不兼容问题。我一个个问题调通的,代码如下:

封装方法

// my-app/utils/request.uts
const UNI_APP_BASE_URL = "http://192.168.1.1:8080"	// 开发环境
// const UNI_APP_BASE_URL = "http://test.com"	// 测试环境
// const UNI_APP_BASE_URL = "http://pro.com"	// 正式环境type JsonResult = {code : number;	// 状态码data ?: any;	// 返回数据msg ?: string;	// 返回消息
}export function get(uri : string, data : any = {}) : Promise<JsonResult> {const url = UNI_APP_BASE_URL + uri;return new Promise((resolve, reject) => {uni.request<JsonResult>({url,method: "GET",data,success: (response) => {const jsonResult = response.dataif (jsonResult != null) {if (jsonResult.code != 0) {uni.showToast({ title: jsonResult.msg ?? "出错了", icon: 'none' })}resolve(jsonResult);}}, fail: (err) => {console.error("错误信息:", err)uni.showToast({ title: "app 错误 " + err.errMsg, icon: 'none' })reject(err);}})})
}export function post(uri : string, data : any = {}) : Promise<JsonResult> {const url = UNI_APP_BASE_URL + uri;return new Promise((resolve, reject) => {uni.request<JsonResult>({url,method: "POST",data,success: (response) => {const jsonResult = response.dataif (jsonResult != null) {if (jsonResult.code != 0) {uni.showToast({ title: jsonResult.msg ?? "出错了", icon: 'none' })}resolve(jsonResult);}}, fail: (err) => {console.error("错误信息:", err)uni.showToast({ title: "app 错误 " + err.errMsg, icon: 'none' })reject(err);}})})
}

如下使用:

<script setup lang="uts">import { post } from '@/utils/request.uts';async function login() {try {const jsonResult = await post("/login", { mobile: "11111111111", code: "111111", grantType: "sms" });console.log("请求返回数据:", jsonResult);} catch (err) {console.error("请求失败:", err);}}login();
</script>

相关文章:

  • 鸿蒙OS在UniApp中集成Three.js:打造跨平台3D可视化应用#三方框架 #Uniapp
  • 一键净化Excel数据:高性能Python脚本实现多核并行清理
  • uni-app学习笔记二十--pages.json页面路由pages设置
  • 五、单元测试-概述入门
  • 【Python Cookbook】文件与 IO(二)
  • Langchaine4j 流式输出 (6)
  • Vim 支持多种编程语言编辑器
  • NLP学习路线图(十五):TF-IDF(词频-逆文档频率)
  • Python Django完整教程与代码示例
  • 计算机网络(5)——数据链路层
  • 超标量处理器设计6-指令解码
  • Chorme如何对于youtube视频进行画中画背景播放?
  • wordpress免费主题网站
  • 利用 Python 爬虫获取淘宝商品详情
  • Java数据结构——八大排序
  • 04.MySQL数据类型详解
  • 网络攻防技术一:绪论
  • 深入解析Vue.js:构建现代Web应用的高效之道
  • 机电的焊接技术
  • MQTT入门实战宝典:从零起步掌握物联网核心通信协议
  • dedecms做多语言的网站/seo外链推广员
  • 开发软件需要学什么专业/石家庄seo结算
  • 沧州哪里有做网站的公司4000-/百度拉新推广平台
  • 公司网站开发费用大概多少/百度软件下载
  • 提供网站建设搭建/seo是什么字
  • jsp 网站开发例子/百度手机助手应用商店下载