Day18_2--Vue.js Ajax(使用 Axios)基础入门学习

Vue.js 中的 Ajax 请求(使用 Axios)

什么是 Axios?

Axios 是一个基于 Promise 的 HTTP 客户端,可以用于浏览器和 Node.js 环境中。它是现代化的 Ajax 库,用来替代传统的 XMLHttpRequest。

为什么选择 Axios?

  • 简单易用:Axios 提供了简洁且强大的 API,使得发送 HTTP 请求变得非常简单。
  • 支持 Promise:Axios 支持 Promise API,能够更好地处理异步操作和错误。
  • 广泛应用:在 Vue.js 社区中得到广泛的应用和支持,与 Vue.js 结合使用非常方便。

如何在 Vue.js 中使用 Axios?

步骤一:安装 Axios

推荐官网直接下载到本地;

Github开源地址: https://github.com/axios/axios

首先,你需要通过 npm 安装 Axios:

bash 复制代码
npm install axios
步骤二:在 Vue 组件中使用 Axios

在 Vue 组件中引入 Axios,并发起 HTTP 请求:

vue 复制代码
<template>
  <div>
    <h2>用户列表</h2>
    <ul>
      <li v-for="user in users" :key="user.id">
        {{ user.name }}
      </li>
    </ul>
  </div>
</template>

<script>
import axios from 'axios';

export default {
  data() {
    return {
      users: []
    };
  },
  mounted() {
    this.fetchUsers();
  },
  methods: {
    fetchUsers() {
      axios.get('后端请求链接')
        .then(response => {
          this.users = response.data;
        })
        .catch(error => {
          console.log('Error fetching users', error);
        });
    }
  }
};
</script>

<style>
/* 样式可以根据需要添加 */
</style>

在这个例子中,我们在 mounted 钩子中调用 fetchUsers 方法来获取用户列表。Axios 发起 GET 请求,并将返回的数据存储在组件的 users 数据属性中。

步骤三:处理 POST 请求

除了 GET 请求外,Axios 也支持 POST、PUT、DELETE 等 HTTP 方法。例如,发送一个 POST 请求来创建新用户:

vue 复制代码
<script>
export default {
  // 省略其他部分...

  methods: {
    createUser() {
      const newUser = {
        name: 'John Doe',
        email: '[email protected]'
      };

      axios.post('后端请求链接', newUser)
        .then(response => {
          console.log('User created:', response.data);
          // 更新 UI 或者执行其他操作
        })
        .catch(error => {
          console.error('Error creating user:', error);
        });
    }
  }
};
</script>
相关推荐
FAREWELL000754 分钟前
Unity基础学习(九)输入系统全解析:鼠标、键盘与轴控制
学习·unity·c#·游戏引擎
郜太素31 分钟前
PyTorch 中神经网络相关要点(损失函数,学习率)及优化方法总结
人工智能·pytorch·python·深度学习·神经网络·学习
threelab1 小时前
05.three官方示例+编辑器+AI快速学习three.js webgl - animation - skinning - ik
人工智能·学习·编辑器
threelab1 小时前
04.three官方示例+编辑器+AI快速学习webgl_animation_skinning_additive_blending
人工智能·学习·编辑器
深度学习机器学习1 小时前
计算机视觉最不卷的方向:三维重建学习路线梳理
人工智能·深度学习·学习·yolo·目标检测·机器学习·计算机视觉
jimsten2 小时前
苍穹外卖 - Day02 学习笔记
java·笔记·学习
工业互联网专业2 小时前
基于springboot+vue的医院门诊管理系统
java·vue.js·spring boot·毕业设计·源码·课程设计·医院门诊管理系统
人类恶.2 小时前
C 语言学习笔记(6)
c语言·笔记·学习
九月TTS2 小时前
TTS-Web-Vue系列:Vue3实现内嵌iframe文档显示功能
前端·javascript·vue.js
我爱加班、、2 小时前
Chrome安装最新vue-devtool插件
javascript·vue.js·chrome·vue-devtool