springboot+vue网站开发-渲染前端列表页面-缩略图信息!内容比较多。这是第一篇,先给大家展示的是,基础的代码封装,vue前端网站模块的代码展示。
我们使用到了pinia-存储我们请求过来的数据,它是一个状态管理,取代了之前的旧技术vuex.
使用起来更为简便一些。
我们使用了axios封装好了一些基础条件,方便对后端服务器发送业务请求。
后端已经写好了接口了。下一篇文章展示后端接口的内容。
如图,我们引入成功了,开始使用他们。
第一步,我们在src下面新建一个utils文件夹,新建一个http.js
//axios基础的封装
import axios from "axios";
const httpInstance = axios.create({
baseURL:'http://127.0.0.1:7777',
timeout:5000
})
//axios请求拦截器
httpInstance.interceptors.request.use(
config =>{
return config
},e => Promise.reject(e)
)
//axios响应拦截器
httpInstance.interceptors.response.use(
res => res.data,
e =>{
return Promise.reject(e)
}
)
export default httpInstance
其他业务接口都可以用它来发请求了。
我们在src下面新建一个apis文件夹,新建一个layout.js
其实这个名字你随意都行的,主要是内容。
import httpInstance from "@/utils/http";
export function getFoListVoAPI(){
return httpInstance({
url:'/fo/foListVo'
})
}
我们在src下面新建stores文件夹(pinia的)
fo.js
import {ref} from 'vue'
import {defineStore} from 'pinia'
import { getFoListVoAPI } from '@/apis/layout'
export const useFoStore =
defineStore('fo',()=>{
//
const foListVo = ref([])
//action获得数据
const getFoListVo = async ()=>{
const res = await getFoListVoAPI()
foListVo.value = res.result;
}
return {foListVo,getFoListVo}
})
这样,我们就可以组件页面内使用这个对外暴漏的对象了。好像java一样,
<script setup>
import { useFoStore } from '@/stores/fo';
const foStore = useFoStore()
</script>
<template>
<div>
<h3>寺庙页面展示</h3>
<div>
请选择你要祭拜的佛菩萨图标,点击即可打开对应的内容
</div>
<div class="fo-list">
<div class="fo" v-for="item in foStore.foListVo " :key="item.id">
<RouterLink to="/foDetail/{{ item.id }}">
<img :src="$host + item.foThumb" :alt="item.name"/>
</RouterLink>
<br/>
<p>{{item.name}}</p>
<p>浏览量{{item.viewCount}}</p>
</div>
</div>
</div>
</template>
<style scoped>
.fo-list{
width: 100%;
align-items: flex-start;
border-radius: 10%;
border-color:2px solid rgb(241, 218, 6);
}
.fo-list .fo{
margin-left: 1.4rem;
margin-bottom: 1.4rem;
width: 25%;
text-align: center;
float: left;
height: auto;
}
.fo-list .fo img{
width: 100%;
}
.fo-list .fo p{
text-align: center;
font-size:0.4rem;
}
</style>
执行是正常的,没有报错。说明调用成功了,页面没有展示信息,是因为我们后端接口返回了内容是空白的。
下一次给大家展示后端接口代码,里面会完成上传信息,展示列表的内容。