惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
L
LangChain Blog
Jina AI
Jina AI
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
雷峰网
雷峰网
T
Tailwind CSS Blog
MongoDB | Blog
MongoDB | Blog
博客园 - 【当耐特】
博客园 - 聂微东
V
Visual Studio Blog
博客园_首页
Engineering at Meta
Engineering at Meta
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
Microsoft Security Blog
Microsoft Security Blog
GbyAI
GbyAI
F
Fortinet All Blogs
C
Check Point Blog
罗磊的独立博客
H
Hackread – Cybersecurity News, Data Breaches, AI and More

博客园 - abcByme

边框渐变、字体渐变 列表进度处理 路由保存参数还在当前页 菜单右侧竖条 登录记住密码浏览器默认样式修改 头像图片上传和裁切 a-table 子级异步加载 动态效果 是否第一次打开 vue3 拖动弹窗 vue3 表格下拉刷新 vue3 下拉刷新 js 数据平均分配 喊话器功能 获取完整的文件路径地址 vue3 词云 树形多选 多表单验证 复选框单选
平均分布从左到右 从上到下
abcByme · 2024-12-18 · via 博客园 - abcByme

<script setup lang="ts">
import { ref } from 'vue';

const list = ref([{}]);
const queryParams = ref({
  currentPage: 1,
  pageSize: 15,
  totalPage: 100,
});
function onChangePage(page: number, pageSize: number) {
  queryParams.value.currentPage = page;
  queryParams.value.pageSize = pageSize;
  // getTaskList();
}
</script>

<template>
  <!-- 图片墙 -->
  <div>
    <div v-if="list && list.length" class="make_img_box grid justify-between  w-full grid-cols-5">
      <div v-for="item, index in 12" :key="index" class="prcItem">
        <a-image src="https://img2.baidu.com/it/u=3565369971,2082314928&fm=253&fmt=auto&app=138&f=JPEG?w=800&h=800" />
      </div>
    </div>
    <div v-else class="no-data">
      <a-empty />
    </div>
    <div class="pagination-box">
      <a-pagination v-model:current="queryParams.currentPage" v-model:page-size="queryParams.pageSize"
        :show-size-changer="true" :total="queryParams.totalPage" :show-quick-jumper="true"
        :show-total="(total) => `共${total}条`" @change="onChangePage" />
    </div>
  </div>
</template>

<style lang="less" scoped>
.no-data {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 500px;
}

.make_img_box {
  // width: calc(100% + 32px);
  // display: grid;
  // grid-template-columns: repeat(auto-fit, minmax(277px, 1fr));
  min-height: 500px;
  margin-top: 16px;

  .prcItem {
    // width: 300px;
    height: 156px;
    margin: 0 10px 20px 10px;
    overflow: hidden;
  }
}

.pagination-box {
  margin-top: 10px;
  margin-right: 32px;
  text-align: right;
}

:deep(.ant-image) {
  width: 100%;
  height: 100%;

  img {
    width: 100%;
    height: 100%;
  }
}
</style>