hku-class/miniprogram/pages/announcement-detail/index.js
2026-05-16 23:59:13 +08:00

46 lines
1.0 KiB
JavaScript

const { get } = require("../../utils/api");
const { showError } = require("../../utils/page-helpers");
function formatDateTime(value) {
if (!value) return "";
return String(value).replace("T", " ").slice(0, 16);
}
Page({
data: {
id: null,
item: null,
loading: false
},
onLoad(options) {
wx.setNavigationBarTitle({ title: "公告详情" });
this.setData({ id: options.id || null });
this.load(options.id);
},
async onPullDownRefresh() {
await this.load(this.data.id);
wx.stopPullDownRefresh();
},
async load(id) {
if (!id) return;
this.setData({ loading: true });
try {
const item = await get(`/api/announcements/${id}`);
this.setData({
item: {
...item,
created_at_text: formatDateTime(item.created_at),
updated_at_text: formatDateTime(item.updated_at)
}
});
} catch (error) {
showError(error, "加载公告失败");
} finally {
this.setData({ loading: false });
}
}
});