位置: IT常识 - 正文

如何在 Vue.js 中使用 Axios(vue.js in action)

编辑:rootadmin
如何在 Vue.js 中使用 Axios

推荐整理分享如何在 Vue.js 中使用 Axios(vue.js in action),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue中写jsx,vue.js放在哪,vue.js使用教程,vue中怎么引入js文件,vue.js computed,vue.js放在哪,vue.js如何使用,vue.js如何使用,内容如对您有帮助,希望把文章链接给更多的朋友!

Axios是一个基于 Promise 的 HTTP 客户端库,适用于浏览器和 Node.js 应用程序,这意味着它可以在前端 JavaScript 应用程序和后端 Node 服务器中使用。

在本文中,我们将了解如何在一个简单的Vue.js应用程序中使用 Axios。Vue 是一个简单的前端 JavaScript 框架,因此这里的 Axios 用例将用于浏览器。

我们将涵盖:

本教程使用 Axios 和 Vue.js 的先决条件

设置我们的 Vue.js 项目

将 Axios 添加到我们的 Vue.js 应用程序

在 Vue.js 组件中通过简单的导入使用 Axios

通过创建插件在我们的 Vue.js 项目中使用 Axios

本教程使用 Axios 和 Vue.js 的先决条件

要继续,您需要安装以下内容:

Node.js v14 或更新版本

JavaScript 包管理器

您选择的 IDE 或文本编辑器,例如 Sublime Text 或Visual Studio Code

我们将使用 npm 作为我们的 JavaScript 包管理器,安装 Node.js 时会包含它。

设置我们的 Vue.js 项目

我们将使用 Vue CLI 创建我们的项目,首先运行以下命令:

$ npm init vue@latest

该命令提示我们选择如何设置我们的项目。

我选择为这个项目命名是mice-away因为——你猜对了——我们正在构建一个有趣的与猫相关的应用程序!我们还将设置它以使用 TypeScript。

如何在 Vue.js 中使用 Axios(vue.js in action)

这是一个Vue查看(我忍不住)我的项目配置;随意更改您的喜好:

超过 20 万开发人员使用 LogRocket 来创造更好的数字体验了解更多 →

Axios 通过各自名称的函数提供对不同 HTTP 方法的访问。例如,可以用于.post(…)POST 请求,也可以用于.get(…)GET 请求等。让我们看看在我们的 Vue 项目中使用 Axios 处理 HTTP 请求的选项!

将 Axios 添加到我们的 Vue.js 应用程序

我们可以通过运行以下命令来安装 Axios:

$ npm i axios

现在已经安装了 Axios,我们将看看在我们的项目中使用它的两种方法。

在 Vue.js 组件中通过简单的导入使用 Axios

您可以在 Vue 组件中使用 Axios,只需将其导入需要发出 HTTP 请求的组件中即可。这是一个例子:

// AnimalFacts.vue​​<模板>    <div class="行">        <div class="col-md-12">            <h3>猫的事实</h3>        </div>        <div class="col-md-12">            <ul class="list-group">                <li v-for="(fact, index) in catFacts" :key="index" class="list-group-item">{{index + 1}}。{{fact.text}}</li>            </ul>        </div>        <div class="row mt-3">            <div class="col-md-12 text-center">                <button @click="loadMoreFacts" class="btn btn-md btn-primary">{{ fetchingFacts ? '...' : '加载更多' }}</button>            </div>        </div>    </div></模板><script lang="ts">    从'vue'导入{defineComponent}    从'axios'导入axios    接口动物事实{        文本:字符串   }    导出默认定义组件({        名称:'AnimalFacts',        数据() {            返回 {                catFacts: [] 作为 AnimalFacts[],                fetchingFacts:假           }       },        方法: {            异步 fetchCatFacts() {                const catFactsResponse = await axios.get<AnimalFacts[]>('https://cat-fact.herokuapp.com/facts/random?animal_type=cat&amount=5')                this.catFacts = catFactsResponse.data           },            异步加载更多事实(){                this.fetchingFacts = true                const catFactsResponse = await axios.get<AnimalFacts[]>('https://cat-fact.herokuapp.com/facts/random?animal_type=cat&amount=5')                this.catFacts.push(...(catFactsResponse.data || []))​                this.fetchingFacts = false           }       },        异步安装(){            等待 this.fetchCatFacts()       }   })</脚本>

在这个示例中,我们在组件中导入了 Axios,并在其中一个组件方法中使用它,通过调用该方法来获取数据以显示在页面上GET。您可以在下面看到此方法的结果:

通过创建插件在我们的 Vue.js 项目中使用 Axios

在我们的项目中使用 Axios 的另一个选择是创建一个插件并为我们的项目分配一个全局 Axios 实例。当您构建应用程序以使用特定 API(可将其配置为基本 URL)时,此选项很有用。

让我们创建我们的 Axios 插件!

首先,我们将通过在终端中运行以下命令来创建一个目录来存放我们的插件:

$ cd src/$ mkdir 插件

接下来,我们将通过在终端中运行以下命令来创建我们的 Axios 插件文件axios.ts:

柒核免费工具箱App,日常必备聚合工具软件,满足你日常所需!来自 LogRocket 的更多精彩文章:

不要错过来自 LogRocket 的精选时事通讯The Replay

使用 React 的 useEffect优化应用程序的性能

在多个 Node 版本之间切换

了解如何使用 AnimXYZ 为您的 React 应用程序制作动画

探索 Tauri,一个用于构建二进制文件的新框架

比较NestJS 与 Express.js

发现TypeScript 领域中使用的流行 ORM

$ 触摸 axios.ts

然后,在我们新创建的axios.ts文件中,我们将创建一个 Axios 实例并使其成为全局属性:

// axios.ts​从'axios'导入axios从“vue”导入类型 {App}​接口 AxiosOptions {    baseUrl?: 字符串    令牌?:字符串}​导出默认 {    安装:(应用程序:应用程序,选项:AxiosOptions)=> {        app.config.globalProperties.$axios = axios.create({            baseURL:options.baseUrl,            标题:{                授权:options.token ? `承载 ${options.token}` : '',            }        })    }}

现在,我们将我们的插件注册到我们的 Vue 实例中main.ts。在注册我们的 Axios 插件时,我们将传入实例选项,包括我们的baseUrl:

// main.ts​从'vue'导入{createApp}从'pinia'导入{createPinia}​从 './App.vue' 导入应用程序从'./router'导入路由器从 './plugins/axios' 导入 axios​const app = createApp(App)​app.use(createPinia())app.use(路由器)app.use(axios, {    baseUrl: 'https://cataas.com/',})​app.mount('#app')

现在我们已经注册了 Axios,我们有一个全局的 Axios 对象可以作为this.$axios. 让我们在我们的组件中使用它:

// HomeView.vue​<脚本设置 lang="ts"></脚本><模板>  <主>    <div class="行">      <div class="col-md-12 text-center mb-3">        <span @click="selectTag(tag)" v-for="(tag, index) in visibileTags" :key="index"          class="badge rounded-pill fs-5 me-2" :class="[tag === activeTag ? 'text-bg-primary' : 'text-bg-secondary']">            #{{标签}}        </span>        <span @click="showNext()" class="badge rounded-pill text-bg-light fs-4">...</span>      </div>    </div>    <div v-if="catImage" class="row">      <div class="col-md-12 text-center">        <img :src="catImage" class="img-fluid" height="500" width="450" :alt="activeTag ?? '默认图片'">      </div>    </div>  </main></模板><script lang="ts">从'vue'导入{defineComponent}从“axios”导入类型 {AxiosInstance}​
本文链接地址:https://www.jiuchutong.com/zhishi/297340.html 转载请保留说明!

上一篇:echarts柱状图坐标轴的内容太长导致显示不全的两种解决办法(echarts柱状图坐标轴)

下一篇:蓝桥杯web开发-5道模拟题让你信心满满(蓝桥杯web开发 618)

  • word文字底色怎么变成白色(word文字底色怎么变成透明)

    word文字底色怎么变成白色(word文字底色怎么变成透明)

  • 小米手机可以设置陀螺仪吗(小米手机可以设置虚拟定位吗)

    小米手机可以设置陀螺仪吗(小米手机可以设置虚拟定位吗)

  • 抖音黑白视频怎么弄的(抖音黑白视频怎么变成彩色)

    抖音黑白视频怎么弄的(抖音黑白视频怎么变成彩色)

  • 小米mix2s前摄像头失效(小米mix2s前摄像头更换视频教程)

    小米mix2s前摄像头失效(小米mix2s前摄像头更换视频教程)

  • 开通快手小店需要的条件(开通快手小店需要什么条件)

    开通快手小店需要的条件(开通快手小店需要什么条件)

  • ns充不进电(ns充不进电 充电图标闪烁)

    ns充不进电(ns充不进电 充电图标闪烁)

  • 苹果x怎么进入恢复模式(苹果x怎么进入诊断模式)

    苹果x怎么进入恢复模式(苹果x怎么进入诊断模式)

  • 文本筛选怎么设置(文本筛选怎么设置多个数据)

    文本筛选怎么设置(文本筛选怎么设置多个数据)

  • 手机贴钢化膜有气泡怎么办(手机贴钢化膜有白边怎么办)

    手机贴钢化膜有气泡怎么办(手机贴钢化膜有白边怎么办)

  • 苹果11pro max防水级别(苹果11promax防水吗?掉水里了怎么办)

    苹果11pro max防水级别(苹果11promax防水吗?掉水里了怎么办)

  • 2345加速浏览器卸载不掉怎么办(2345加速浏览器好用吗)

    2345加速浏览器卸载不掉怎么办(2345加速浏览器好用吗)

  • seagate是什么硬盘(seagate硬盘有什么用)

    seagate是什么硬盘(seagate硬盘有什么用)

  • 怎么把照片以文件形式发送(怎么把照片以文件形式发送jpg)

    怎么把照片以文件形式发送(怎么把照片以文件形式发送jpg)

  • 苹果无线耳机突然没声音了怎么回事(苹果无线耳机突然声音变得很小)

    苹果无线耳机突然没声音了怎么回事(苹果无线耳机突然声音变得很小)

  • testflight是干嘛用的(testflight 干嘛的)

    testflight是干嘛用的(testflight 干嘛的)

  • 苹果11是高通的么

    苹果11是高通的么

  • 应用商店停止运行怎么办(应用商店停止运行了怎么办Vivo手机)

    应用商店停止运行怎么办(应用商店停止运行了怎么办Vivo手机)

  • 抖音直播很卡是什么原因(抖音直播卡是网络原因还是手机)

    抖音直播很卡是什么原因(抖音直播卡是网络原因还是手机)

  • 苹果11演示机和正常机区别(苹果演示机和官换机哪个好)

    苹果11演示机和正常机区别(苹果演示机和官换机哪个好)

  • qq删除后聊天记录还有吗(qq删除后聊天记录会消失吗)

    qq删除后聊天记录还有吗(qq删除后聊天记录会消失吗)

  • 哔哩哔哩有mac版吗(哔哩哔哩mac版能缓存吗)

    哔哩哔哩有mac版吗(哔哩哔哩mac版能缓存吗)

  • 卡贴机可以抹掉所有设置吗(卡贴机可以抹掉数据线吗)

    卡贴机可以抹掉所有设置吗(卡贴机可以抹掉数据线吗)

  • 如何恢复ppt工具栏(怎么恢复做好的ppt)

    如何恢复ppt工具栏(怎么恢复做好的ppt)

  • 怎么把lte改成4g(怎么把lte改成4G在线)

    怎么把lte改成4g(怎么把lte改成4G在线)

  • csp认证是啥(csp认证含金量怎么样)

    csp认证是啥(csp认证含金量怎么样)

  • qq安全扫描失败禁止下载该文件(qq安全扫描失败无法下载怎么解决2022)

    qq安全扫描失败禁止下载该文件(qq安全扫描失败无法下载怎么解决2022)

  • 商户扫码退款流程(商户扫码退款流程视频)

    商户扫码退款流程(商户扫码退款流程视频)

  • 新版Edge浏览器如何更改地址栏搜索引擎(新版edge浏览器历史记录)

    新版Edge浏览器如何更改地址栏搜索引擎(新版edge浏览器历史记录)

  • 不列颠哥伦比亚省的一块南瓜田,加拿大 (© James Chen/Shutterstock)(不列颠哥伦比亚大学排名)

    不列颠哥伦比亚省的一块南瓜田,加拿大 (© James Chen/Shutterstock)(不列颠哥伦比亚大学排名)

  • 发票开具,发票备注栏能手写字吗?
  • 企业如何代扣代缴劳务报酬所得税
  • 收到稳岗补贴怎么做会计分录小企业会计准则
  • 公帐的钱可以转给个人私帐可以吗
  • 进口消费税为什么一定要组价
  • 个体户核定双定户是否可以年度汇算清缴
  • 小规模按季申报 月销售收入不超过
  • 哪些税不适用征管法
  • 发票已入账跨年可以红冲重开吗
  • 实收资本记错账如何调整账面价值
  • 预收款结转收入怎么算
  • 餐饮行业固定资产界定
  • 一般纳税人开普票税率是3%还是13%
  • 机票的进项
  • 小规模纳税人发生销售退回如何申报
  • 企业房租收入如何申报
  • 小规模纳税人的条件
  • 物流公司的财务能学到东西吗
  • 单位价值5000元二手设备怎么算
  • 碎片化对应什么
  • mac如何修改
  • win101903怎么查看
  • jquery怎么升级
  • Windows操作系统出现内存错误解决方法
  • php和mysql的结合是目前web开发中的黄金组合
  • 债权投资 科目
  • 权利许可证照印花税优惠政策
  • echarts简介
  • php实现多语言切换
  • 联营单位投入的资金属于资产吗
  • 服装店快递费
  • 退税勾选错了怎么办
  • 营业外收支的账户是什么
  • 购入固定资产的会计科目
  • 税控盘有什么用途和作用
  • 手写报销条子怎么写
  • 非独立核算的分公司需要独立建账吗
  • 工程结算是否算成本
  • 房产税是按不含增值税计提吗
  • 收货和入库的区别
  • 办公室里的咖啡馆玛氏市场细分
  • 什么叫增值入股
  • 增值税普票没有发票章可以吗
  • 现在勾选认证是可以下月初认证?
  • 代建项目谁付款
  • 防疫物资采购会计处理
  • 怎么样打印自己想要的内容
  • 购入土地使用权以什么为计税依据
  • 结转成本的方法有几种
  • 数字证书限额多少
  • 实收资本包括哪些项目
  • sql分页查询怎么实现
  • mysql使用命令
  • cmd命令行操作
  • 桌面上的图标不能更改对还是错
  • ubuntu不支持设置属性
  • centos control-d
  • 如何使用一键启动
  • win10mobile升级顾问
  • win7怎么连接其他电脑共享的打印机
  • 如何使用调制解调器
  • win10开机显示recover
  • [置顶]电影名字《收件人不详》
  • nodejs发送post请求
  • windows node.js
  • 清除cookie是什么意思
  • linux shell 数组长度
  • javascript数据
  • 使用mvc模式设计的web应用程序
  • jquery 表格插件
  • 北京市国家税务局电子税务局
  • 拆迁户契税减免政策去哪里办理
  • 医保月底结算规定是什么
  • 南京国税局长是谁
  • 湖南电子税务局密码错误5次
  • 福建省纪检委网站
  • 增值税税控开票软件密码不知道了怎么办
  • 铅球七米
  • 土地评估报告书
  • 怎么批量打开excel文件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设