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文档

相关推荐
.ZGR.几秒前
C语言:数组的增删查改2.0
c语言·开发语言
漫漫不慢.3 分钟前
算法练习-二分查找
java·开发语言·算法
超级大只老咪29 分钟前
字段行居中(HTML基础语法)
前端·css·html
掘根29 分钟前
【Qt】绘图
开发语言·qt
IT_陈寒42 分钟前
Python开发者必看!10个高效数据处理技巧让你的Pandas代码提速300%
前端·人工智能·后端
咖啡续命又一天1 小时前
python 自动化采集 ChromeDriver 安装
开发语言·python·自动化
只_只1 小时前
npm install sqlite3时报错解决
前端·npm·node.js
FuckPatience1 小时前
Vue ASP.Net Core WebApi 前后端传参
前端·javascript·vue.js
数字冰雹1 小时前
图观 流渲染打包服务器
服务器·前端·github·数据可视化
JarvanMo1 小时前
Flutter:我在网上看到了一个超炫的动画边框,于是我在 Flutter 里把它实现了出来
前端