|
@@ -1335,13 +1335,19 @@ const getMusicInfo = async (res: any) => {
|
|
|
} else {
|
|
|
(window as any).DYFirstTrackName = '';
|
|
|
}
|
|
|
- // 如果是作业模式,需要默认渲染当前学生声部对应的声轨,并且默认不显示总谱
|
|
|
+ /**
|
|
|
+ * 如果是作业模式,需要默认渲染当前学生声部对应的声轨,并且默认不显示总谱
|
|
|
+ * 2025.02.28 补充逻辑,作业支持用户切换声轨,如果切换了声轨,则选中用户切换后的声轨,用户切换声轨后,url链接会带有part-index参数,
|
|
|
+ * 通过有没有part-index区分作业有没有切换声轨,如果没有切换声轨,则还是默认选中学生当前声部的声轨
|
|
|
+ */
|
|
|
if (state.isHomeWork && storeData.user?.instrumentId) {
|
|
|
- const currentTrack = res.data.musicSheetSoundList.find((item: any) => item.musicalInstrumentId === storeData.user?.instrumentId)?.track;
|
|
|
- if (currentTrack) {
|
|
|
- partIndex = tracks.findIndex(item => item === currentTrack) || partIndex
|
|
|
- state.defaultScoreRender = false
|
|
|
+ if (!query["part-index"]) {
|
|
|
+ const currentTrack = res.data.musicSheetSoundList.find((item: any) => item.musicalInstrumentId === storeData.user?.instrumentId)?.track;
|
|
|
+ if (currentTrack) {
|
|
|
+ partIndex = tracks.findIndex(item => item === currentTrack) || partIndex
|
|
|
+ }
|
|
|
}
|
|
|
+ state.defaultScoreRender = false
|
|
|
}
|
|
|
// 设置音源 track 为当前的声轨 index为当前的
|
|
|
const { track, index, musicalInstrumentId } = state.isSimplePage ? { track:tracks[0], index: state.partIndex, musicalInstrumentId: '' } : initMusicSource(res.data, tracks, partIndex, workRecordInstrumentId)
|