index修改
This commit is contained in:
parent
b5c9aa67bf
commit
5aca74e056
@ -36,6 +36,11 @@ const routes = [
|
|||||||
name: 'MapDetail',
|
name: 'MapDetail',
|
||||||
component: () => import('@/views/index/MapDetail.vue')
|
component: () => import('@/views/index/MapDetail.vue')
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: 'author',
|
||||||
|
name: 'ActiveAuthor',
|
||||||
|
component: () => import('@/views/index/ActiveAuthor.vue')
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: 'weapon-match',
|
path: 'weapon-match',
|
||||||
name: 'WeaponMatch',
|
name: 'WeaponMatch',
|
||||||
|
@ -62,6 +62,7 @@ onMounted(() => {
|
|||||||
<div class="nav-left" :class="{ active: showMobileMenu }">
|
<div class="nav-left" :class="{ active: showMobileMenu }">
|
||||||
<router-link to="/maps" class="nav-link">最近上传地图</router-link>
|
<router-link to="/maps" class="nav-link">最近上传地图</router-link>
|
||||||
<router-link to="/weekly" class="nav-link">热门下载地图</router-link>
|
<router-link to="/weekly" class="nav-link">热门下载地图</router-link>
|
||||||
|
<router-link to="/author" class="nav-link">活跃作者推荐</router-link>
|
||||||
<router-link v-if="isLoggedIn" to="/weapon-match" class="nav-link">Weapon 匹配</router-link>
|
<router-link v-if="isLoggedIn" to="/weapon-match" class="nav-link">Weapon 匹配</router-link>
|
||||||
<router-link v-if="isLoggedIn" to="/competition" class="nav-link">赛程信息</router-link>
|
<router-link v-if="isLoggedIn" to="/competition" class="nav-link">赛程信息</router-link>
|
||||||
<router-link v-if="isLoggedIn" to="/demands" class="nav-link">办事大厅</router-link>
|
<router-link v-if="isLoggedIn" to="/demands" class="nav-link">办事大厅</router-link>
|
||||||
|
61
src/views/index/ActiveAuthor.vue
Normal file
61
src/views/index/ActiveAuthor.vue
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
<template>
|
||||||
|
<div class="weekly-recommend">
|
||||||
|
<div class="page-header">
|
||||||
|
<h1>活跃作者推荐</h1>
|
||||||
|
<div class="header-subtitle">
|
||||||
|
<span class="date-range">{{ currentWeekRange }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="table-container">
|
||||||
|
<table class="maps-table">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>序号</th>
|
||||||
|
<th>预览图</th>
|
||||||
|
<th>地图名称</th>
|
||||||
|
<th>作者</th>
|
||||||
|
<th>下载次数</th>
|
||||||
|
<th>收藏次数</th>
|
||||||
|
<th>玩家数量</th>
|
||||||
|
<th>创建时间</th>
|
||||||
|
<th>标签</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr v-for="(map, index) in recommendedMaps" :key="map.id" @click="goToMapDetail(map.id)" class="table-row">
|
||||||
|
<td class="rank-number">{{ index + 1 }}</td>
|
||||||
|
<td class="preview-cell">
|
||||||
|
<img :src="map.thumbnail" :alt="map.chinese_name">
|
||||||
|
</td>
|
||||||
|
<td class="map-name">{{ map.chinese_name }}</td>
|
||||||
|
<td>{{ map.user }}</td>
|
||||||
|
<td>{{ map.download_count }}</td>
|
||||||
|
<td>{{ map.favourite_count }}</td>
|
||||||
|
<td>{{ map.player_count }}</td>
|
||||||
|
<td>{{ formatDate(map.create_time) }}</td>
|
||||||
|
<td>
|
||||||
|
<div class="tags">
|
||||||
|
<span v-for="tag in map.tags" :key="tag" class="tag">{{ tag }}</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.rank-number {
|
||||||
|
font-weight: bold;
|
||||||
|
color: #1a237e;
|
||||||
|
text-align: center;
|
||||||
|
width: 50px;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
</style>
|
@ -44,6 +44,7 @@
|
|||||||
|
|
||||||
<div class="actions">
|
<div class="actions">
|
||||||
<a :href="map.zip_file" class="download-btn" download>下载地图</a>
|
<a :href="map.zip_file" class="download-btn" download>下载地图</a>
|
||||||
|
<a class="score-btn">地图评分</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -226,6 +227,29 @@ onMounted(() => {
|
|||||||
background: #0056b3;
|
background: #0056b3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.score-btn {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100%;
|
||||||
|
padding: 12px;
|
||||||
|
background: #a8d1fb;
|
||||||
|
color: white;
|
||||||
|
text-align: center;
|
||||||
|
text-decoration: none;
|
||||||
|
border-radius: 5px;
|
||||||
|
transition: background 0.2s;
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.score-btn:hover {
|
||||||
|
background: #6c8bb9;
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: 480px) {
|
@media (max-width: 480px) {
|
||||||
.info-grid {
|
.info-grid {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user