初始化仓库

This commit is contained in:
tao
2025-12-18 14:11:48 +08:00
parent e96f277a68
commit 54ec472bd4
1107 changed files with 158756 additions and 0 deletions

90
utils/audio.ts Normal file
View File

@@ -0,0 +1,90 @@
/**
* 这是Fnaudio方法的必选参数约束
*/
type FunTypeAudioRequired = {
/**
* 音频的数据链接,用于直接播放。
*/
readonly src : string,
/**
* 是否自动开始播放,默认 true
*/
readonly autoplay ?:boolean ,
/**
* 是否遵循系统静音开关,
* 当此参数为 false 时,即使用户打开了静音开关,也能继续发出声音,
* 默认值 true
*/
readonly obeyMuteSwitch ?:boolean,
/**
* 开始播放的位置单位s默认 0
*/
readonly startTime ?: number,
/**
* 是否循环播放,默认 false
*/
readonly loop ?: boolean,
/**
* 音量。范围 0~1
*/
readonly volume ?: number,
/**
* 播放的倍率。可取值0.5/0.8/1.0/1.25/1.5/2.0默认值为1.0
*/
readonly playbackRate ?: 0.5|0.8|1.0|1.25|1.5|2.0
}
/**
* 封装提示音的方法类
*/
class Audio {
constructor(required : FunTypeAudioRequired ){
if (required?.volume != undefined && (required.volume < 0 || required.volume > 1)) {
throw new Error('提供的volume值不符合规范');
}
let innerAudioContext = uni.createInnerAudioContext();
innerAudioContext = Object.assign(innerAudioContext,required)
innerAudioContext.onPlay(() => {
console.log('开始播放');
});
setTimeout(() => {
innerAudioContext.stop()
innerAudioContext.destroy()
console.log(',销毁实例')
}, 900);
innerAudioContext.onError((res) => {
console.error(res.errMsg);
console.error(res.errCode);
});
}
}
/**
* 成功提示音
* @return
*/
export function autioSuccess():void {
let audio = null;
audio = new Audio({
src:'/static/audio/success.mp3',
playbackRate:2,
autoplay : true,
volume : 1,
})
audio = null
}
/**
* 失败提示音
* @return
*/
export function autioError():void {
let audio = null;
audio = new Audio({
src:'/static/audio/error.mp3',
playbackRate:2,
autoplay : true,
volume : 1,
})
audio = null
}