vue3前端开发-小兔鲜项目-一级页面banner图渲染!其实,首页的banner渲染代码可以拿来复用的,只是区别在于,传递的接口参数不一样而已。默认是1-首页banner;2-一级分类页面banner图。
1:改造一下之前的获取banner的接口调用函数,增加一个参数对象。
写好默认的值1.(不赋值的情况下,就是这个默认值1)
//获取banner
export function getBannerAPI(params = {}) {
//默认是1,商品为2
const { distributionSite = '1' } = params
return httpInstance({
url:'/home/banner',
params:{
distributionSite
}
})
}
我们增加了一个参数对象params.而且做好了默认值的设置。(用的是一种解构赋值的模式)
2:把之前HomeBanner.vue里面的代码,拿过来,
//加载banner
const bannerList = ref([])
const getBanner = async () =>{
const res = await getBannerAPI({ distributionSite:'2'})
bannerList.value = res.result
}
onMounted(()=> getBanner())
需要提前引入接口函数:
import { getBannerAPI } from "@/apis/home"
3:修改完善页面内容。
在template里面新增banner的渲染模块内容。
<div class="top-category">
<div class="container m-top-20">
<!--面包屑导航-->
<div class="bread-container">
<el-breadcrumb separator=">">
<el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
<el-breadcrumb-item>{{ categoryData.name }}</el-breadcrumb-item>
</el-breadcrumb>
</div>
<!--banner区域-->
<div class="home-banner">
<el-carousel height="500px">
<el-carousel-item v-for="item in bannerList" :key="item.id">
<img :src="item.imgUrl" alt="">
</el-carousel-item>
</el-carousel>
</div>
</div>
</div>
经过以上的改动。我们的一级页面就可以成功拿到了后端接口反馈过来的一级栏目的banner图信息了。