Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

vue 使用axios

作者:资本principal   发布日期:2026-06-06   浏览:7

// 引入 axios 库
import axios from 'axios';

// 创建一个 axios 实例,可以在这里配置默认的 baseURL、请求头等信息
const instance = axios.create({
  baseURL: 'https://api.example.com', // API 的 base URL
  timeout: 5000, // 请求超时时间 (5秒)
  headers: {
    'Content-Type': 'application/json' // 默认请求头
  }
});

// 发起 GET 请求
function fetchData() {
  return instance.get('/data') // 请求路径
    .then(response => {
      console.log('成功获取数据:', response.data); // 处理响应数据
      return response.data;
    })
    .catch(error => {
      console.error('请求失败:', error); // 处理错误
      throw error;
    });
}

// 发起 POST 请求
function postData(data) {
  return instance.post('/submit', data) // 请求路径和要发送的数据
    .then(response => {
      console.log('数据提交成功:', response.data); // 处理响应数据
      return response.data;
    })
    .catch(error => {
      console.error('提交失败:', error); // 处理错误
      throw error;
    });
}

// 在 Vue 组件中使用
export default {
  methods: {
    async loadData() {
      try {
        const result = await fetchData(); // 调用 fetchData 函数获取数据
        this.items = result; // 将获取到的数据赋值给组件的 data 属性
      } catch (error) {
        console.error('加载数据失败:', error);
      }
    },
    async submitData() {
      try {
        const result = await postData({ name: 'Vue', value: 'Awesome' }); // 调用 postData 函数提交数据
        console.log('提交结果:', result);
      } catch (error) {
        console.error('提交数据失败:', error);
      }
    }
  }
};

解释说明:

  1. 引入 Axios:首先通过 import axios from 'axios'; 引入了 axios 库。
  2. 创建 Axios 实例:通过 axios.create() 创建了一个自定义的 axios 实例,并设置了 baseURLtimeout 等配置项。这使得后续请求可以直接基于这个实例进行,简化了代码。
  3. 发起 GET 请求:定义了一个 fetchData 函数,使用 instance.get() 方法发起 GET 请求,并处理响应数据或错误。
  4. 发起 POST 请求:定义了一个 postData 函数,使用 instance.post() 方法发起 POST 请求,并传递数据。
  5. 在 Vue 组件中使用:展示了如何在 Vue 组件的方法中调用这些函数来获取或提交数据,并将结果绑定到组件的 data 中。

希望这段代码和解释对你有帮助!

上一篇:vue多页面应用开发

下一篇:vue 注释

大家都在看

vue.js devtools用法

three.js vue

vue js for循环

vue.min.js 本地引入

vue.js 3

highlight.js vue

vue.config.js 配置

vue.config.js 配置代理

vue.config.js devserv

vue.config.js configu

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站