1、修复了结果页、测试页与 test-select 的跳转上下文丢失问题。 2、调整 api/Test 与小程序 app/share 逻辑,补全第三方/企业场景参数透传。 3、优化 DISC/MBTI/PDP/SBTI 结果页样式与按钮交互,一致化微信与抖音端。 Made-with: Cursor
80 lines
1.9 KiB
JavaScript
80 lines
1.9 KiB
JavaScript
// pages/test-select/index.js
|
|
const app = getApp()
|
|
|
|
Page({
|
|
data: {
|
|
permFace: true,
|
|
permMbti: true,
|
|
permSbti: true,
|
|
permPdp: true,
|
|
permDisc: true,
|
|
/** 四类入口均被企业权限关闭时提示,避免误以为白屏 */
|
|
allTestsDisabled: false
|
|
},
|
|
|
|
onLoad(options) {
|
|
try {
|
|
require('../../utils/thirdPartyContext.js').ingestThirdPartyOnPageLoad(options || {}, app)
|
|
} catch (e) {}
|
|
try {
|
|
wx.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage', 'shareTimeline'] })
|
|
} catch (e) {}
|
|
// 分享直达时尽早完成静默登录,避免用户点进子页时仍无 token
|
|
app.ensureLogin().catch(() => {})
|
|
this._syncPerms()
|
|
},
|
|
|
|
onShow() {
|
|
this._syncPerms()
|
|
},
|
|
|
|
_syncPerms() {
|
|
const p = app.globalData.enterprisePermissions
|
|
const permFace = !p || p.face !== false
|
|
const permMbti = !p || p.mbti !== false
|
|
const permSbti = !p || p.sbti !== false
|
|
const permPdp = !p || p.pdp !== false
|
|
const permDisc = !p || p.disc !== false
|
|
this.setData({
|
|
permFace,
|
|
permMbti,
|
|
permSbti,
|
|
permPdp,
|
|
permDisc,
|
|
allTestsDisabled: p && !permMbti && !permSbti && !permPdp && !permDisc
|
|
})
|
|
},
|
|
|
|
goMBTI() {
|
|
wx.navigateTo({ url: '/pages/test/mbti' })
|
|
},
|
|
|
|
goSBTI() {
|
|
wx.navigateTo({ url: '/pages/test/sbti' })
|
|
},
|
|
|
|
goPDP() {
|
|
wx.navigateTo({ url: '/pages/test/pdp' })
|
|
},
|
|
|
|
goDISC() {
|
|
wx.navigateTo({ url: '/pages/test/disc' })
|
|
},
|
|
|
|
onShareAppMessage() {
|
|
const { getSharePath } = require('../../utils/share')
|
|
return {
|
|
title: '4 大详细性格测试,来测测你的性格类型',
|
|
path: getSharePath('/pages/test-select/index')
|
|
}
|
|
},
|
|
|
|
onShareTimeline() {
|
|
const { buildShareQuery } = require('../../utils/share')
|
|
return {
|
|
title: '4 大详细性格测试,来测测你的性格类型',
|
|
query: buildShareQuery()
|
|
}
|
|
}
|
|
})
|