| 
						 | 
						- /**
 -  * 微信小程序订阅消息工具
 -  * 用于统一管理订阅消息通知功能
 -  */
 - 
 - /**
 -  * 订阅模板消息
 -  * @param {Array} templateIds - 模板ID数组,如果不传则使用默认模板
 -  * @returns {Promise} 返回订阅结果
 -  */
 - export function subscribeMessage(templateIds = null) {
 -     return new Promise((resolve, reject) => {
 -         // 默认的模板ID列表
 -         const defaultTemplateIds = [
 -             'uXZnHWrjtcX9JHlnMpdlWmzgJp71sKxCRiMn3TrE-EE',
 -             'gTzGpOfJcYxtbvPG9OHnhbureKz5XLG8NPyECUGb2lw',
 -         ];
 -         
 -         // 使用传入的模板ID或默认模板ID
 -         const tmplIds = templateIds || defaultTemplateIds;
 -         
 -         wx.requestSubscribeMessage({
 -             tmplIds: tmplIds, // 需要订阅的模板ID列表
 -             success(res) {
 -                 resolve(res);
 -                 console.log('订阅消息调用成功', res);
 -                 
 -                 // 遍历处理每个模板ID的订阅结果
 -                 tmplIds.forEach(tmplId => {
 -                     if (res[tmplId] === 'accept') {
 -                         console.log(`用户同意订阅模板ID:${tmplId}`);
 -                         // 这里可以添加用户同意后的逻辑,比如发送消息等(注意:发送消息需要在后端进行)
 -                     } else if (res[tmplId] === 'reject') {
 -                         console.log(`用户拒绝订阅模板ID:${tmplId}`);
 -                     } else {
 -                         console.log(`用户对该模板ID的订阅请求:${res[tmplId]}`); // 'ban' 表示用户被禁止订阅该模板
 -                     }
 -                 });
 -             },
 -             fail(err) {
 -                 resolve(err); // 即使失败也resolve,避免阻塞业务流程
 -                 console.error('订阅消息调用失败', err);
 -             }
 -         });
 -     });
 - }
 - 
 - /**
 -  * 在发布内容前调用订阅消息
 -  * 这是一个便捷方法,用于在发布内容前统一处理订阅逻辑
 -  * @param {Array} templateIds - 可选的模板ID数组
 -  * @returns {Promise} 返回订阅结果
 -  */
 - export async function subscribeBeforePublish(templateIds = null) {
 -     try {
 -         const result = await subscribeMessage(templateIds);
 -         return result;
 -     } catch (error) {
 -         console.error('订阅消息失败:', error);
 -         return null;
 -     }
 - }
 - 
 - export default {
 -     subscribeMessage,
 -     subscribeBeforePublish
 - };
 
 
  |