41 lines
995 B
JavaScript
41 lines
995 B
JavaScript
/**
|
|
* 祝福动画工具
|
|
* 用于在支付弹窗等场景显示祝福动画
|
|
*/
|
|
|
|
// 使用简单的全局变量来存储回调函数
|
|
let blessingCallback = null
|
|
|
|
/**
|
|
* 显示祝福动画
|
|
* @param {Object} options - 配置选项
|
|
* @param {string} options.type - 祝福类型 'sheep' | 'horse' | 'random'
|
|
*/
|
|
export function showBlessing(options = {}) {
|
|
const type = options.type || 'random'
|
|
console.log('[showBlessing] 触发祝福动画, type:', type)
|
|
|
|
if (blessingCallback) {
|
|
blessingCallback({ type })
|
|
} else {
|
|
console.warn('[showBlessing] 没有注册的监听器')
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 注册祝福动画监听
|
|
* @param {Function} callback - 回调函数
|
|
*/
|
|
export function registerBlessing(callback) {
|
|
blessingCallback = callback
|
|
console.log('[registerBlessing] 祝福动画监听器已注册')
|
|
}
|
|
|
|
/**
|
|
* 移除祝福动画监听
|
|
*/
|
|
export function unregisterBlessing() {
|
|
blessingCallback = null
|
|
console.log('[unregisterBlessing] 祝福动画监听器已移除')
|
|
}
|