/** * 页面通讯工具类(uni.emit)的封装 * * @author terrfly * @site https://www.jeequan.com * @date 2022/11/24 15:54 */ const model = { // 定义监听器的名字, 应该是一个页面一个, 不可两个页面公共一个, 否则会导致: 一个页面onUnload 移除时影响另一个页面的正常接收。 // 业务页面 监听, onUnload应该移除掉。 // 通用搜索页 ENAME_REF_SEARCH_PAGE : 'ENAME_REF_SEARCH_PAGE', // 应用列表页的刷新 ENAME_REF_TABLE_MCH_APP : 'ENAME_REF_TABLE_MCH_APP', // 应用详情 ENAME_REF_TABLE_MCH_APP_DETAILS : 'ENAME_REF_TABLE_MCH_APP_DETAILS', // 调起扫一扫 ENAME_E_PAY_SCAN : 'ENAME_E_PAY_SCAN', // 重置 金额 ENAME_RESET_PAY_AMOUNT: 'ENAME_RESET_PAY_AMOUNT', // 更新支付订单信息 ENAME_REF_PAY_ORDER : 'ENAME_REF_PAY_ORDER', // 更新 门店列表 ENAME_REF_STORE_LIST : 'ENAME_REF_STORE_LIST', // 更新 门店详情 ENAME_REF_STORE_DETAIL : 'ENAME_REF_STORE_DETAIL', // 更新 员工列表 ENAME_REF_SYS_USER_LIST : 'ENAME_REF_SYS_USER_LIST', // 更新 员工详情 ENAME_REF_SYS_USER_DETAIL : 'ENAME_REF_SYS_USER_DETAIL', // 更新 通道列表 ENAME_REF_PAY_PASSAGE_LIST : 'ENAME_REF_PAY_PASSAGE_LIST', // 更新 辅助终端信息 ENAME_REF_TERMINAL_LIST : 'ENAME_REF_TERMINAL_LIST', // 更新 辅助终端 详情页 ENAME_REF_TERMINAL_DETAIL : 'ENAME_REF_TERMINAL_DETAIL', // 更新 智能pos 信息 ENAME_REF_AUTOPOS_LIST : 'ENAME_REF_AUTOPOS_LIST', // 更新 智能pos 详情页 ENAME_REF_AUTOPOS_DETAIL : 'ENAME_REF_AUTOPOS_DETAIL', // 更新 扫码pos 信息 ENAME_REF_SCANPOS_LIST : 'ENAME_REF_SCANPOS_LIST', // 更新 扫码pos 详情页 ENAME_REF_SCANPOS_DETAIL : 'ENAME_REF_SCANPOS_DETAIL', // 码牌列表 ENAME_REF_QRC_LIST : 'ENAME_REF_QRC_LIST', // 码牌详情 ENAME_REF_QRC_DETAIL : 'ENAME_REF_QRC_DETAIL', // 更新 打印机 信息 ENAME_REF_PRINTER_LIST : 'ENAME_REF_PRINTER_LIST', // 更新 打印机 详情页 ENAME_REF_PRINTER_DETAIL : 'ENAME_REF_PRINTER_DETAIL', // 云喇叭列表 ENAME_REF_SPEAKER_LIST : 'ENAME_REF_SPEAKER_LIST', // 云喇叭详情 ENAME_REF_SPEAKER_DETAIL : 'ENAME_REF_SPEAKER_DETAIL', // 进件列表 ENAME_REF_APPLYMENT_LIST : 'ENAME_REF_APPLYMENT_LIST', // 刷脸设备列表 ENAME_REF_FACE_LIST : 'ENAME_REF_FACE_LIST', // 刷脸设备详情 ENAME_REF_FACE_DETAIL : 'ENAME_REF_FACE_DETAIL', // 刷脸广告列表 ENAME_REF_AD_LIST : 'ENAME_REF_AD_LIST', // 刷脸广告 详情 ENAME_REF_AD_DETAILS : 'ENAME_REF_AD_DETAILS', // 更新 会员列表 ENAME_REF_MEMBER_LIST : 'ENAME_REF_MEMBER_LIST', // 更新 会员详情 ENAME_REF_MEMBER_DETAIL : 'ENAME_REF_MEMBER_DETAIL', // 更新 会员账户流水列表 ENAME_REF_MEMBER_ACCOUNT_HISTORY_LIST : 'ENAME_REF_MEMBER_ACCOUNT_HISTORY_LIST', // 更新 会员账户流水详情 ENAME_REF_MEMBER_ACCOUNT_HISTORY_DETAIL : 'ENAME_REF_MEMBER_ACCOUNT_HISTORY_DETAIL', // 更新 会员充值记录列表 ENAME_REF_MEMBER_RECHARGE_RECORD_LIST : 'ENAME_REF_MEMBER_RECHARGE_RECORD_LIST', // 更新 会员充值记录详情 ENAME_REF_MEMBER_RECHARGE_RECORD_DETAIL : 'ENAME_REF_MEMBER_RECHARGE_RECORD_DETAIL', // 更新 充值规则列表 ENAME_REF_RECHARGE_RULE_LIST : 'ENAME_REF_RECHARGE_RULE_LIST', // 刷新页面的 发射事件 , 更新页面 && 更新搜索页面 refPageAndSearchEmit: (refEmitEventName, data = {} ) => { model.pageEmit(refEmitEventName, data) model.pageEmit(model.ENAME_REF_SEARCH_PAGE, data) }, // 自定义 pageEmit: (refEmitEventName, data) => { uni.$emit(refEmitEventName, data ) }, // 废弃该函数。 ( 因为: 页面只监听一次, 使用该函数则无法再次监听, 需要再每个页面写入: uni.$on 保证正常接收。 ) // 监听页面刷新函数 on: (refEmitEventName) => { return new Promise( (resolve) => { uni.$on(refEmitEventName, function(data){ resolve( data ) }) }) } } export default model