Files
blog/develop/front/index.md
kerbores f30d6a932d
Some checks failed
Release / Release (push) Failing after 26s
add: 文章列表
Signed-off-by: kerbores <kerbores@gmail.com>
2025-08-07 16:58:21 +08:00

45 lines
979 B
Markdown

<script setup>
import { ref, onMounted,inject } from 'vue'
const posts = ref([])
const tags = inject('tags')
onMounted(async () => {
const allPosts = import.meta.glob('./posts/**/*.md', { eager: true })
posts.value = Object.keys(allPosts).map(path => {
const post = allPosts[path].__pageData
return {
title: post.frontmatter.title,
date: new Date(post.frontmatter.date),
tags: post.frontmatter.tags,
url: path.replace('.md', '')
}
}).sort((a, b) => b.date - a.date)
})
</script>
# 文章归档
<div class="archive-list">
<div v-for="post in posts" :key="post.url" class="post-item">
<a :href="post.url">{{ post.title }}</a>
<span class="date">{{ post.date.toLocaleDateString() }}</span>
</div>
</div>
<style scoped>
.archive-list {
max-width: 800px;
margin: 0 auto;
}
.post-item {
margin-bottom: 1rem;
padding: 1rem;
border-bottom: 1px solid #eee;
}
.date {
float: right;
color: #666;
}
</style>