| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> uniapp封装axios?大可不必那么麻烦。 -> 正文阅读 |
|
[JavaScript知识库]uniapp封装axios?大可不必那么麻烦。 |
?最近群里的一个小明同学问 uniapp可以使用axios请求吗?我当时就一愣 反问为什么要使用axios,是 uni.request 不香了吗? 小明:因为axios可以像vue的项目一样,在request里面封装巴拉巴拉一堆。 我:那uni.request不也可以吗 小明:可是我不知道 uni.request怎么封装,可以讲讲然后我教教新来的是实习生嘛。 我:那你听仔细了,我只讲这一次。 1.前期准备前期准备新建一个uniapp项目,新增node小demo (新手自己看,老手直接跳到后面) 1-1 uniapp项目创建首先我们先创建我们的uniapp项目 打开我们的hbuilderX 文件/1.项目 ?然后起名创建 我们的uniapp就创建好了。 1-2 node接口创建然后在新建我们的接口 首先打开我们的命令窗口 输入命令 npm init? 然后一直回车就可以了 ?然后新建一个app.js的文件 ?然后安装我们的express
在app.js中写入在终端输入node ./app.js 运行
这里可以看见项目成功运行 ?然后在app.js中写入测试数据
然后重新运行项目打开浏览器输入?http://localhost:3001/list ?这样就可以看见我们的测试数据了。到这里我们的后端模拟数据就可以了。项目保持运行状态。 2.uni.request封装首先我们先创建文件夹utils/request.js 2-1 url_all在我们的request.js中首先自己定义一个叫 url_all ?我们定义的url_all就是我们接口的地址
我这里这样定义的原因是我们在实际项目开发过程中我们可能会有我们的本地地址,还会有我们的测试地址,还会有我们的线上地址,免得因为这个地址每次打包发布都需要改变这里的地址。我们这里可以给判断,同学们可以自己思考一下该怎么做。如果有不懂的可以联系我帮助解答。 接着往下。 然后定义一个baseurl获取我们的接口地址到底的线上线下还是测试 这里直接写死
2-2 request然后下面定义一个加request的函数并导出,有一个参数
这里我们需要将request这个函数的内部进行一个请求,然后将数据进行导出 , 这里问题就来了,如果我们失败的请求想要在外部获取我们可以直接导出吗? 那我们这里就可以考虑使用一个Promise来获取成功与否的状态, 这里直接return一个new的Promise
接下来里面就可以写我们的请求了。到这里为了代码的简洁,我们可以将内容部分抽离成一个函数 handleRequest然后将我们的参数options和状态传过去
2-3 handleRequest首先定义好我们的handleRequest接收三个参数然后就可以直接发送请求 首先看看我们的uni.request uni.request(OBJECT) | uni-app官网 我们直接进行组合数据然后将我们的状态return出去
到这里我们的uni.request其实就已经封装好了,接下里我们来测试一下。 3 api新增新增文件 api/user.js
然后找到我们的 pages/index/index.vue 引入测试
然后就可以拿到数据 ?4.结束看到这里我们的封装uni.request发送请求就已经完成了,是不是跟axios发送请求没有差别呢? 如果你觉得这篇文章对您有帮助就三连支持一下呗。 如果你还有什么问题你可以选择↓↓↓ |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/11 11:10:30- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |