You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

85 lines
2.5 KiB
JavaScript

Page({
data: {
/** 刷脸token */
bizToken: "",
/** 认证小程序appId */
miniProgramAppId: "",
/** 认证小程序跳转页地址 */
miniProgramPath: "",
/** 刷脸结束回调地址 */
miniProgramCallBackUrl: "",
/** 是否已跳转认证小程序 */
goFaceDone: false,
},
/** 点击前往认证 */
onJump() {
const { bizToken, miniProgramAppId, miniProgramPath } = this.data;
wx.navigateToMiniProgram({
appId: miniProgramAppId,
path: miniProgramPath + "?bizToken=" + bizToken,
success: (res) => {
this.setData({
goFaceDone: true,
});
},
});
},
/** 生命周期函数--监听页面加载 */
onLoad: function ({
bizToken = "",
miniProgramAppId = "",
miniProgramPath = "",
miniProgramCallBackUrl = "",
}) {
console.log("---middle onLoad");
this.setData({
bizToken: decodeURIComponent(bizToken),
miniProgramAppId: decodeURIComponent(miniProgramAppId),
miniProgramPath: decodeURIComponent(miniProgramPath),
miniProgramCallBackUrl: decodeURIComponent(miniProgramCallBackUrl),
});
},
/** 生命周期函数--监听页面显示 */
onShow: function () {
console.log("---middle onShow");
const { goFaceDone, miniProgramCallBackUrl } = this.data;
/** 防止从认证进入后直接返回 */
if (!goFaceDone) return;
/** 已跳转认证小程序,重置 */
this.setData({
goFaceDone: false,
});
/** getEnterOptionsSync 基础库 2.9.4 开始支持,低版本需做兼容处理 */
const options = wx.getEnterOptionsSync();
console.log("---app onShow options", options);
/** 从认证小程序返回 */
if (
options.scene === 1038 &&
options.referrerInfo.extraData &&
options.referrerInfo.extraData.faceResult
) {
const pages = getCurrentPages();
const previous = pages[pages.length - 2];
/** 重新加载认证页面 */
previous.$vm.reloadPage(
miniProgramCallBackUrl.replace(
"https://realnameverify-test.fadada.com",
"https://realnameverify-test07.fadada.com"
).replace(
"https://realnameverify.fadada.com",
"https://realnameverify06.fadada.com"
)
);
wx.navigateBack({
delta: 1,
});
}
},
});