Files
c/admin-web/src/views/Inbox.vue
刘正航 49c946dd55 feat: 小程序移除管理后台入口,新增admin-web前端项目
将管理后台功能从微信小程序中剥离,独立为Vue.js前端项目admin-web

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-14 13:49:07 +08:00

57 lines
1.6 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="container">
<section class="hero fade-up">
<div class="hero-badge">INBOX</div>
<h1 class="hero-title">用户私信收件箱</h1>
<p class="hero-sub">仅展示通过检测后成功送达的私信内容</p>
</section>
<section class="card fade-up fade-up-delay-1" v-if="list.length">
<div class="card-title">私信列表</div>
<div class="list-item" v-for="item in list" :key="item.id">
<div class="item-title">{{ item.text }}</div>
<div class="item-sub">发送人{{ item.nickname || item.username }}{{ item.username }}</div>
<div class="row">
<span class="label">发送时间</span>
<span class="value">{{ item.created_text }}</span>
</div>
</div>
</section>
<section class="card fade-up fade-up-delay-1" v-else>
<div class="empty">{{ loading ? '加载中...' : '暂无私信内容。' }}</div>
</section>
</div>
</template>
<script>
import { request } from '@/utils/request'
export default {
name: 'InboxView',
data() {
return {
loading: false,
list: []
}
},
mounted() {
this.fetchList()
},
methods: {
async fetchList() {
this.loading = true
try {
const data = await request({ url: '/content/posts/inbox', params: { page: 1, page_size: 80 } })
this.list = (data.items || []).map((item) => ({
...item,
created_text: (item.created_at || '').replace('T', ' ').slice(0, 19)
}))
} finally {
this.loading = false
}
}
}
}
</script>