vue3中,调接口,渲染数据

1. 封装接口文档

javascript 复制代码
// src/apis/xxx.js中
// 1. 导入 封装的axios实例
import request from '@/utils/http'    

// 2. 封装接口 --获取轮播图数据
export const getBannerAPI = (params = {})=>{

    // 传默认参数->(传参 = 默认参数)
    const { distributionSite = '1' } = params

    return request({
        url:'/home/banner',
        method: 'GET',        //get请求可以默认不写
        params:{              //传参,GET请求:query参数->params; POST请求:Body参数->data
            distributionSite
        }
    })
} 

2. 调接口/发送请求

javascript 复制代码
<script setup>            // vue3中的setup组合式API(语法糖)
import { getBannerAPI } from '@/apis/home'    //1. 按需导入 接口
import { ref, onMounted } from 'vue'

const bannerList = ref([])            // 2. 定义一个响应式数据 来接收

const getBanner = async ()=>{         // 3. 使用es7中的async await异步方法调用接口
    const res = await getBannerAPI()
    bannerList.value = res.result     // 5. 接口成功发起后,将数据传给响应式数据
}

onMounted(() => getBanner())            // 4.调用钩子,发送请求 
</script>

发送完请求,可以使用Google浏览器 查看接口发送情况(Network -> Fetch/XHR)

3. 渲染页面

javascript 复制代码
<template>
    <div class="home-banner">
        <el-carousel height="500px">
            <!-- 调用 bannerList响应式数据 来渲染页面 -->
            <el-carousel-item v-for="item in bannerList" :key="item.id">
                <img :src="item.imgUrl" alt="">
            </el-carousel-item>
        </el-carousel>
    </div>
</template>

知识点:接口类型/HTTP请求方法

状态码

参考:HTTP 请求方法 | 菜鸟教程 (runoob.com)

接口文档:apifox-API文档

相关推荐
不会写DN1 小时前
Gin 日志体系详解
前端·javascript·gin
冬夜戏雪1 小时前
实习面经记录(十)
java·前端·javascript
skiy2 小时前
java与mysql连接 使用mysql-connector-java连接msql
java·开发语言·mysql
一念春风2 小时前
智能文字识别工具(AI)
开发语言·c#·wpf
桦02 小时前
【C++复习】:继承
开发语言·c++
何仙鸟2 小时前
GarmageSet下载和处理
java·开发语言
wefly20173 小时前
免安装!m3u8live.cn在线 M3U8 播放器,小白也能快速上手
java·开发语言·python·json·php·m3u8·m3u8在线转换
爱学习的程序媛3 小时前
【Web前端】JavaScript设计模式全解析
前端·javascript·设计模式·web
小码哥_常3 小时前
从SharedPreferences到DataStore:Android存储进化之路
前端
老黑3 小时前
开源工具 AIDA:给 AI 辅助开发加一个数据采集层,让 AI 从错误中自动学习(Glama 3A 认证)
前端·react.js·ai·nodejs·cursor·vibe coding·claude code