refactor: 优化搜索页面样式和交互逻辑 style: 调整热门标签和热门搜索组件样式 fix: 修复登录状态判断逻辑 chore: 更新图片资源和SVG图标 docs: 更新README文档 test: 添加搜索功能测试用例 build: 更新依赖包版本 ci: 配置自动化测试和部署流程 perf: 优化页面加载性能和响应速度
90 lines
4.7 KiB
Plaintext
90 lines
4.7 KiB
Plaintext
<div class="box-box" :class="['box-' + tabPitch]">
|
|
<div class="slideshow-box">
|
|
<div class="tab-list flexacenter">
|
|
<div class="tab-item thread" :class="{'pitch': tabPitch == 'thread'}" @click="tabItem('thread')">帖子</div>
|
|
<div class="tab-item offer" :class="{'pitch': tabPitch == 'offer'}" @click="tabItem('offer')">Offer</div>
|
|
<div class="tab-item vote" :class="{'pitch': tabPitch == 'vote'}" @click="tabItem('vote')">投票</div>
|
|
<div class="tab-item interviewexperience" :class="{'pitch': tabPitch == 'interviewexperience'}" @click="tabItem('interviewexperience')">面经</div>
|
|
</div>
|
|
</div>
|
|
<div class="slideshow-content flexflex">
|
|
<!-- 问答 -->
|
|
<div class="thread-side-box side-box">
|
|
<div class="box">
|
|
<a v-for="item in latestList.thread" :key="item.uniqid" class="item" target="_blank" href="https://ask.gter.net/index.html?uniqid=fyT5SDvfizTf">
|
|
<div class="question flexacenter">
|
|
<div class="text flex1 ellipsis">{{ item.title }}</div>
|
|
</div>
|
|
<div class="answer flexacenter">
|
|
<div class="text flex1">
|
|
<div class="texttext">{{ item.content }}</div>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
|
|
<a class="add-btn flexcenter" href="https://ask.gter.net" target="_blank">
|
|
<div>more</div>
|
|
<img class="" style="margin-left: 8px;" src="./img/right-arrow-black.svg">
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<!-- offer -->
|
|
<div class="offer-side-box side-box">
|
|
<div class="box">
|
|
<a v-for="item in latestList.offer" :key="item.thread_id" class="item flexflex" href="https://offer.gter.net/details/44qD8Ce4uDaO" target="_blank">
|
|
<img class="school-img" :src="item.data.schoollogo" />
|
|
<div class="school-detail flex1 flexflex">
|
|
<div class="school-name one-line-display">{{ item.data.schoolname }}</div>
|
|
<div class="school-brief one-line-display">{{ item.data.professional }}</div>
|
|
<div class="school-offer flexacenter">
|
|
<span>{{ item.data.degree }}</span>
|
|
<span class="long-string">|</span>
|
|
<span>{{ item.data.semester }}</span>
|
|
<span class="long-string">|</span>
|
|
<span>{{ item.data.apply_results_text }}</span>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
|
|
<a class="add-btn flexcenter" href="https://offer.gter.net" target="_blank">
|
|
<div>more</div>
|
|
<img class="" style="margin-left: 8px;" src="./img/right-arrow-black.svg">
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- 投票 -->
|
|
<div class="vote-side-box side-box">
|
|
<div class="box">
|
|
<a v-for="item in latestList.vote" :key="item.thread_id" class="item flexflex vuehide" target="_blank" href="https://vote.gter.net/details/{{ item.thread_id }}">
|
|
<div class="name one-line-display">{{ item.title }}</div>
|
|
<div class="brief">{{ item.content }}</div>
|
|
</a>
|
|
|
|
<a class="add-btn flexcenter" href="https://vote.gter.net" target="_blank">
|
|
<div>more</div>
|
|
<img class="" style="margin-left: 8px;" src="./img/right-arrow-black.svg">
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- mj -->
|
|
<div class="interviewexperience-side-box side-box">
|
|
<div class="box">
|
|
<a v-for="item in latestList.interviewexperience" :key="item.thread_id" class="item flexflex" href="https://interviewexperience.gter.net/details/{{ item.thread_id }}" target="_blank">
|
|
<div class="school one-line-display">{{ item.data.schoolname }}</div>
|
|
<div class="major one-line-display"></div>
|
|
<div class="info">
|
|
<img class="icon" :src="item.user.avatar" />
|
|
<span class="text">{{ item.title || item.content }} </span>
|
|
</div>
|
|
</a>
|
|
|
|
<a class="add-btn flexcenter" href="https://interviewexperience.gter.net" target="_blank">
|
|
<div>more</div>
|
|
<img class="" style="margin-left: 8px;" src="./img/right-arrow-black.svg">
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div> |