实现后的样子
效果:

代码:
- <template>
- <blog-head/>
- <div class="box">
- <div class="blogs">
- <ul>
- <li class="blogs_list" v-for="(item,i) in listData" :key="i">
- <a @click="articleInfo(item.id)" target="_blank"><em>{{ item.typeName }}</em>
- <i><img v-bind:src="item.img" alt="图片加载失败"></i>
- <h2>{{ item.title }}</h2>
- <p>{{ item.sum }}</p>
- <div class="blogs_base"><span class="blogs_time">{{item.date}}</span><span class="blogs_onclick">{{item.num}}</span></div>
- </a>
- </li>
- </ul>
-
- <div class="epages">
- <el-pagination background layout="total, prev, pager, next" :current-page="query.pageIndex"
- :page-size="query.pageSize" :total="pageTotal" @current-change="handlePageChange"></el-pagination>
- </div>
- </div>
- </div>
-
- <blog-bottom/>
- </template>
- <script>
- import BlogHead from '../components/blog_head.vue'
- import BlogBottom from '../components/blog_bottom.vue'
- import {reactive, ref} from "vue";
- import {getArticleKeyWords, getArticlePageList, getArticleWithHot} from "../api";
- export default {
- name: "blog",
- components:{
- BlogHead,BlogBottom
- },
- setup() {
-
- //分页
- const query = reactive({
- pageIndex: 1, //默认当前页为第一页
- pageSize: 3, //默认每页条数为3条
- });
- const listData = ref([]); //列表数据
- const pageTotal = ref(0); //总条数
- // 分页导航
- const handlePageChange = (val) => {
- query.pageIndex = val;
- getData();
- };
-
- // 获取表格数据
- const getData = () => {
- getArticlePageList(query).then((res) => {
- listData.value = res.records;
- pageTotal.value = res.total || 0;
- });
- };
- getData();
-
-
-
- return {
- query,
- listData,
- pageTotal,
- };
- },
- };
- </script>
官方的一些参数说明
