|
@@ -9,7 +9,7 @@ import { Badge, Circle, Popover, Popup, showConfirmDialog, showToast, NoticeBar
|
|
import Speed from "./speed";
|
|
import Speed from "./speed";
|
|
import { evaluatingData, handleStartEvaluat } from "/src/view/evaluating";
|
|
import { evaluatingData, handleStartEvaluat } from "/src/view/evaluating";
|
|
import Settting from "./settting";
|
|
import Settting from "./settting";
|
|
-import state, { IPlatform, handleChangeSection, handleResetPlay, handleRessetState, togglePlay, resetPlaybackToStart } from "/src/state";
|
|
|
|
|
|
+import state, { IPlatform, handleChangeSection, handleResetPlay, handleRessetState, togglePlay } from "/src/state";
|
|
import { getAudioCurrentTime } from "/src/view/audio-list";
|
|
import { getAudioCurrentTime } from "/src/view/audio-list";
|
|
import { followData, toggleFollow } from "/src/view/follow-practice";
|
|
import { followData, toggleFollow } from "/src/view/follow-practice";
|
|
import { api_back } from "/src/helpers/communication";
|
|
import { api_back } from "/src/helpers/communication";
|
|
@@ -428,6 +428,60 @@ export default defineComponent({
|
|
}
|
|
}
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+ // 切换 演唱和演奏模式的时候处理
|
|
|
|
+ function handlerRefreshPlayType() {
|
|
|
|
+ // 妙极客的 曲子 时间是不变的,所以不做处理
|
|
|
|
+ if( !state.isEvxml ) {
|
|
|
|
+ // 重新计算state.times
|
|
|
|
+ const { isOpenMetronome, isSingOpenMetronome } = state
|
|
|
|
+ const { xmlMp3BeatFixTime } = metronomeData
|
|
|
|
+ if(state.playType === "play"){
|
|
|
|
+ if(isOpenMetronome && !isSingOpenMetronome){
|
|
|
|
+ state.fixtime = state.fixtime + xmlMp3BeatFixTime
|
|
|
|
+ } else if(!isOpenMetronome && isSingOpenMetronome){
|
|
|
|
+ state.fixtime = state.fixtime - xmlMp3BeatFixTime
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ if(isSingOpenMetronome && !isOpenMetronome){
|
|
|
|
+ state.fixtime = state.fixtime + xmlMp3BeatFixTime
|
|
|
|
+ } else if(!isSingOpenMetronome && isOpenMetronome){
|
|
|
|
+ state.fixtime = state.fixtime - xmlMp3BeatFixTime
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ const fixtime = state.fixtime
|
|
|
|
+ state.times.map(item => {
|
|
|
|
+ if(state.playType === "play"){
|
|
|
|
+ if(isOpenMetronome && !isSingOpenMetronome){
|
|
|
|
+ item.time = item.time + xmlMp3BeatFixTime
|
|
|
|
+ item.endtime = item.endtime + xmlMp3BeatFixTime
|
|
|
|
+ item.fixtime = fixtime
|
|
|
|
+ } else if(!isOpenMetronome && isSingOpenMetronome){
|
|
|
|
+ item.time = item.time - xmlMp3BeatFixTime
|
|
|
|
+ item.endtime = item.endtime - xmlMp3BeatFixTime
|
|
|
|
+ item.fixtime = fixtime
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ if(isSingOpenMetronome && !isOpenMetronome){
|
|
|
|
+ item.time = item.time + xmlMp3BeatFixTime
|
|
|
|
+ item.endtime = item.endtime + xmlMp3BeatFixTime
|
|
|
|
+ item.fixtime = fixtime
|
|
|
|
+ } else if(!isSingOpenMetronome && isOpenMetronome){
|
|
|
|
+ item.time = item.time - xmlMp3BeatFixTime
|
|
|
|
+ item.endtime = item.endtime - xmlMp3BeatFixTime
|
|
|
|
+ item.fixtime = fixtime
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ try {
|
|
|
|
+ metronomeData.metro.calculation(state.times);
|
|
|
|
+ } catch (error) {}
|
|
|
|
+ console.log("重新之后的times", state.times, fixtime)
|
|
|
|
+ }
|
|
|
|
+ // 重置播放状态
|
|
|
|
+ handleRessetState()
|
|
|
|
+ // 隐藏重播按钮
|
|
|
|
+ resetBtn.value.display = false
|
|
|
|
+ }
|
|
return () => (
|
|
return () => (
|
|
<>
|
|
<>
|
|
<div
|
|
<div
|
|
@@ -517,7 +571,7 @@ export default defineComponent({
|
|
state.playType = "play"
|
|
state.playType = "play"
|
|
state.playSource = state.music?"music":"background"
|
|
state.playSource = state.music?"music":"background"
|
|
}
|
|
}
|
|
- resetPlaybackToStart()
|
|
|
|
|
|
+ handlerRefreshPlayType()
|
|
}}
|
|
}}
|
|
>
|
|
>
|
|
<img style={{ display: state.playType === "play" ? "" : "none" }} class={styles.iconBtn} src={headImg(`perform.png`)} />
|
|
<img style={{ display: state.playType === "play" ? "" : "none" }} class={styles.iconBtn} src={headImg(`perform.png`)} />
|