Files
YelayMaths/yelaymaths/pages/wode/wode.js
T
Yeomai 7d5db6a867 新增「我的订单」页面(订单中心)
- 微信审核要求交易类小程序提交订单中心 path,之前小程序没有订单页
- 新页面 pages/orders/orders:列表展示商品名 / 状态 / 订单号 / 金额 / 下单时间,接 GET /v1/orders
- 我的页新增「我的订单」入口,文案走后台配置 profile.menu.orders
- utils/api.js 补 getOrders(),utils/format.js 补 toDateTimeString()
2026-10-01 12:22:11 +08:00

99 lines
2.8 KiB
JavaScript

// pages/wode/wode.js
const api = require('../../utils/api');
const store = require('../../utils/store');
const config = require('../../config/index');
const app = getApp();
Page({
data: {
showCode: false,
headiconUrl: '',
isLoggedIn: false,
// 文字全部来自后台配置
userNameText: '',
loginBtnText: '',
version: '',
qrcodeUrl: '',
text2: '',
text3: '',
text4: '',
text5: '',
text6: '',
/** 「我的订单」入口文案,走后台配置 */
ordersText: '',
},
onLoad() {
app.ready().then(() => {
this.applyConfig();
this.applyUser();
});
},
onShow() {
if (store.getSiteConfig() && Object.keys(store.getSiteConfig()).length) this.applyConfig();
this.applyUser();
},
applyConfig() {
const qrcodeName = store.cfg('profile.qrcode_image');
this.setData({
version: store.cfg('site.version'),
text2: store.cfg('profile.menu.change_info'),
text3: store.cfg('profile.menu.share'),
text4: store.cfg('profile.menu.contact'),
text5: store.cfg('profile.menu.wechat'),
text6: store.cfg('profile.qrcode_caption'),
ordersText: store.cfg('profile.menu.orders'),
qrcodeUrl: qrcodeName ? config.STATIC_BASE_URL + '/Images/WXCode/' + qrcodeName + '.png' : '',
});
},
applyUser() {
const user = store.getUser();
// 「已登录」看的是用户主动登录过没有(服务端记着这一位),不是有没有 token
const registered = !!(user && user.isLogin === 1);
this.setData({
isLoggedIn: registered,
userNameText: registered ? user.nickname : store.cfg('profile.user.guest'),
loginBtnText: registered ? store.cfg('login.button.logout') : store.cfg('profile.button.login'),
// 未登录一律用默认头像:静默登录仍会带回上次设置的头像,
// 不挡住的话退出登录后还会显示用户自己的头像。
headiconUrl:
registered && user.headiconUrl
? user.headiconUrl
: config.STATIC_BASE_URL + config.PLACEHOLDER.USER,
});
},
toLoginOrOut() {
wx.navigateTo({ url: '/pages/LoginOrOutDetails/LoginOrOutDetails' });
},
toChangeUserInfo() {
if (!this.data.isLoggedIn) {
wx.showToast({ mask: true, icon: 'error', title: store.cfg('profile.tip.needLogin') });
return;
}
wx.navigateTo({ url: '/pages/ChangeUserInfo/ChangeUserInfo' });
},
/** 订单中心:微信审核要求交易类小程序必须有,入口放在这一页。 */
toOrders() {
wx.navigateTo({ url: '/pages/orders/orders' });
},
showQrcode() {
this.setData({ showCode: true });
},
onCodeClose() {
this.setData({ showCode: false });
},
onShareAppMessage() {
return { title: store.cfg('share.title'), path: '/pages/index/index' };
},
});