Files
PC-Light-Forum/search-tag.html
DESKTOP-RQ919RC\Pc 38028167c0 feat: 新增搜索标签页面及相关功能
refactor: 优化搜索页面样式和交互逻辑

style: 调整热门标签和热门搜索组件样式

fix: 修复登录状态判断逻辑

chore: 更新图片资源和SVG图标

docs: 更新README文档

test: 添加搜索功能测试用例

build: 更新依赖包版本

ci: 配置自动化测试和部署流程

perf: 优化页面加载性能和响应速度
2025-10-31 19:09:58 +08:00

80 lines
3.3 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>标签搜索</title>
<link rel="stylesheet" href="./css/public.css" />
<link rel="stylesheet" href="./css/search-tag.css" />
<script src="./js/vue.global.js"></script>
<style scoped>
[v-cloak] {
display: none;
}
</style>
</head>
<body>
<div class="container" id="search-tag" v-cloak>
<head-top></head-top>
<div class="label-title flexacenter">
<img class="icon" src="./img/well-number.svg" />
<div class="text">{{ tag }}</div>
</div>
<div class="classify flexacenter">
<div class="item" :class="{'pitch': key == tabValue}" v-for="(item, key) in tabList" :key="key" @click="cutTab(key)">{{ item }}</div>
</div>
<div class="quantity flexacenter">
{{ tabList[tabValue] }}
<div class="line"></div>
<div class="num">{{ count }}</div>
</div>
<div class="matter flexflex">
<div class="matter-content flex1">
<div class="list-box" v-if="list.length != 0">
<template v-for="(item,index) in list" :key="index">
<item-offer v-if=" item.type == 'offer'" :itemdata="item"></item-offer>
<item-summary v-else-if="item.type == 'offer_summary'" :itemdata="item"></item-summary>
<item-vote v-else-if="item.type == 'vote'" :itemdata="item"></item-vote>
<item-mj v-else-if="item.type == 'interviewexperience'" :itemdata="item"></item-mj>
<item-tenement v-else-if="item.type == 'tenement'" :itemdata="item"></item-tenement>
<item-forum v-else :itemdata="item"></item-forum>
</template>
</div>
<div v-if="list.length == 0 && page == null" class="empty flexcenter">
<img class="empty-icon" src="./img/empty-icon.png" />
<div class="empty-text">- 暂无内容 -</div>
</div>
<div class="pages-box flexcenter" v-if="pagination.length != 0">
<img v-if="page == 1" class="arrows" src="./img/arrows-gray-simple.svg" alt="">
<img @click="prevPage" v-else class="arrows rotate180" src="./img/arrows-gray-deep.svg" alt="">
<div class="item" :class="{'pitch': item == page }" v-for="(item, index) in pagination" @click="cutPage(item)">{{ item }}</div>
<img v-if="page == maxPage" class="arrows rotate180" src="./img/arrows-gray-simple.svg" alt="">
<img @click="nextPage" v-else v-else class="arrows" src="./img/arrows-gray-deep.svg" alt="">
</div>
</div>
<div class="sidebar-box">
<hot-tag></hot-tag>
<hot-search></hot-search>
<slideshow-box></slideshow-box>
<latest-list></latest-list>
</div>
</div>
</div>
<script src="./js/axios.min.js"></script>
<script src="./js/public.js"></script>
<script type="module" src="./js/search-tag.js"></script>
</body>
</html>