hku-class/miniprogram/pages/member-detail/index.js

34 lines
916 B
JavaScript

const { get } = require("../../utils/api");
const { showError } = require("../../utils/page-helpers");
Page({
data: { member: null, loading: false },
onLoad(options) {
wx.setNavigationBarTitle({ title: "同学资料" });
this.load(options.id);
},
async load(id) {
if (!id) return;
this.setData({ loading: true });
try {
const member = await get(`/api/directory/${id}`);
this.setData({
member: {
...member,
role_text: member.membership_role === "teacher" ? "老师" : "同学",
role_mark: member.membership_role === "teacher" ? "师" : "同",
class_role_text: member.membership_role === "teacher"
? "老师"
: member.committee_role || "同学"
}
});
} catch (error) {
showError(error, "加载资料失败");
} finally {
this.setData({ loading: false });
}
}
});