|
@@ -6,7 +6,7 @@ import { headImg } from "../image";
|
|
|
import state, { handleSetSpeed, resetBaseRate } from "../../../state";
|
|
|
import { metronomeData } from "../../../helpers/metronome";
|
|
|
import { getQuery } from "/src/utils/queryString";
|
|
|
-import { api_createMusicPlayer, api_updateMusicPlayer } from "/src/helpers/communication";
|
|
|
+import { api_createMusicPlayer, api_updateMusicPlayer, api_checkSocketStatus } from "/src/helpers/communication";
|
|
|
import { storeData } from "/src/store";
|
|
|
|
|
|
export default defineComponent({
|
|
@@ -35,6 +35,7 @@ export default defineComponent({
|
|
|
() => {
|
|
|
// handleSetSpeed(speed.value);
|
|
|
state.speed = Math.floor(speed.value);
|
|
|
+ handleSetSpeed(speed.value);
|
|
|
}
|
|
|
);
|
|
|
watch(
|
|
@@ -53,20 +54,26 @@ export default defineComponent({
|
|
|
metronomeData.disable = !val
|
|
|
}
|
|
|
})
|
|
|
+ // 切换节拍器
|
|
|
const toggleSwitch = async (res: any) => {
|
|
|
switchLoading.value = true;
|
|
|
try {
|
|
|
- // 模拟异步操作,例如 API 调用
|
|
|
- console.log(123567,res)
|
|
|
if (storeData.isApp) {
|
|
|
+ state.loadingText = '节拍器准备中,请稍等…'
|
|
|
+ state.isLoading = true;
|
|
|
const targetSrc = res ? state.beatSong.accompany || state.beatSong.music : state.accompany || state.music;
|
|
|
- api_updateMusicPlayer({
|
|
|
+ const resData = await api_updateMusicPlayer({
|
|
|
musicSrc: targetSrc || state.accompany || state.music, // 曲谱音频url,有可能含节拍器的音频不存在
|
|
|
tuneSrc: "https://oss.dayaedu.com/MECMP/1722593665681.mp3", //效音音频url
|
|
|
checkFrequence: 496,
|
|
|
})
|
|
|
- metronomeDisable.value = res;
|
|
|
- switchLoading.value = false;
|
|
|
+ // console.log('切换节拍器音频',resData)
|
|
|
+ if (resData?.content) {
|
|
|
+ state.isLoading = false;
|
|
|
+ metronomeDisable.value = res;
|
|
|
+ switchLoading.value = false;
|
|
|
+ }
|
|
|
+ // api_checkSocketStatus();
|
|
|
} else {
|
|
|
metronomeDisable.value = res;
|
|
|
switchLoading.value = false;
|
|
@@ -74,9 +81,10 @@ export default defineComponent({
|
|
|
} catch (error) {
|
|
|
console.log(error)
|
|
|
} finally {
|
|
|
- //switchLoading.value = false;
|
|
|
+ state.isLoading = false;
|
|
|
+ switchLoading.value = false;
|
|
|
}
|
|
|
- };
|
|
|
+ };
|
|
|
return () => (
|
|
|
<div class={[styles.speedContainer, styles[state.modeType]]}>
|
|
|
<div class={styles.head}>
|