|
|
@@ -4,24 +4,29 @@
|
|
|
<!-- <a class="ArticleView-full" @click="fullScreen">全屏模式</a> -->
|
|
|
<div
|
|
|
v-if="
|
|
|
- (curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url) || config.isHasPY || config.isHasEN
|
|
|
+ ((curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url) ||
|
|
|
+ config.isHasPY ||
|
|
|
+ config.isHasEN) &&
|
|
|
+ curQue.property.mp3_position === 'top'
|
|
|
"
|
|
|
class="aduioLine-box aduioLine-practice-npc"
|
|
|
>
|
|
|
- <div v-if="curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url" class="aduioLine-content">
|
|
|
- <AudioLine
|
|
|
- ref="audioLine"
|
|
|
- audio-id="artPraAudio"
|
|
|
- :mp3="curQue.mp3_list[0].url"
|
|
|
- :get-cur-time="getCurTime"
|
|
|
- :stop-audio="stopAudio"
|
|
|
- :width="colLength == 2 ? 175 : 700"
|
|
|
- :mp3-source="curQue.mp3_list[0].source"
|
|
|
- :ed="ed"
|
|
|
- type="audioLine"
|
|
|
- @handleChangeStopAudio="handleChangeStopAudio"
|
|
|
- @emptyEd="emptyEd"
|
|
|
- />
|
|
|
+ <div class="aduioLine-content">
|
|
|
+ <template v-if="curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url">
|
|
|
+ <AudioLine
|
|
|
+ ref="audioLine"
|
|
|
+ audio-id="artPraAudio"
|
|
|
+ :mp3="curQue.mp3_list[0].url"
|
|
|
+ :get-cur-time="getCurTime"
|
|
|
+ :stop-audio="stopAudio"
|
|
|
+ :width="colLength == 2 ? 175 : 700"
|
|
|
+ :mp3-source="curQue.mp3_list[0].source"
|
|
|
+ :ed="ed"
|
|
|
+ type="audioLine"
|
|
|
+ @handleChangeStopAudio="handleChangeStopAudio"
|
|
|
+ @emptyEd="emptyEd"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
</div>
|
|
|
<div class="aduioLine-right">
|
|
|
<!-- <span :class="['Repeat-16', isRepeat ? '' : 'disabled']" @click="changeRepeat"></span>
|
|
|
@@ -347,6 +352,17 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div
|
|
|
+ class="multilingual-para"
|
|
|
+ :class="[item.isTitle ? 'multilingual-para-center' : '']"
|
|
|
+ v-if="curQue.property.multilingual_position === 'para'"
|
|
|
+ >
|
|
|
+ {{
|
|
|
+ multilingualTextList[multilingual] && multilingualTextList[multilingual][index]
|
|
|
+ ? multilingualTextList[multilingual][index]
|
|
|
+ : ''
|
|
|
+ }}
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
v-show="
|
|
|
(curQue.wordTime &&
|
|
|
curQue.wordTime[index] &&
|
|
|
@@ -392,11 +408,70 @@
|
|
|
<span class="full-screen-icon" @click="fullScreen"> </span>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="multilingual" v-for="(items, indexs) in multilingualTextList" :key="indexs">
|
|
|
+ <!-- <div class="multilingual" v-for="(items, indexs) in multilingualTextList" :key="indexs">
|
|
|
{{ items }}
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
</template>
|
|
|
+ <div
|
|
|
+ v-if="
|
|
|
+ ((curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url) ||
|
|
|
+ config.isHasPY ||
|
|
|
+ config.isHasEN) &&
|
|
|
+ curQue.property.mp3_position === 'bottom'
|
|
|
+ "
|
|
|
+ class="aduioLine-box aduioLine-practice-npc aduioLine-box-bottom"
|
|
|
+ >
|
|
|
+ <div class="aduioLine-content">
|
|
|
+ <template v-if="curQue.mp3_list && curQue.mp3_list.length > 0 && curQue.mp3_list[0].url">
|
|
|
+ <AudioLine
|
|
|
+ ref="audioLine"
|
|
|
+ audio-id="artPraAudio"
|
|
|
+ :mp3="curQue.mp3_list[0].url"
|
|
|
+ :get-cur-time="getCurTime"
|
|
|
+ :stop-audio="stopAudio"
|
|
|
+ :width="colLength == 2 ? 175 : 700"
|
|
|
+ :mp3-source="curQue.mp3_list[0].source"
|
|
|
+ :ed="ed"
|
|
|
+ type="audioLine"
|
|
|
+ @handleChangeStopAudio="handleChangeStopAudio"
|
|
|
+ @emptyEd="emptyEd"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ <div class="aduioLine-right">
|
|
|
+ <!-- <span :class="['Repeat-16', isRepeat ? '' : 'disabled']" @click="changeRepeat"></span>
|
|
|
+ <span
|
|
|
+ :class="['pinyin-16', config.isShowPY ? '' : 'disabled']"
|
|
|
+ @click="changePinyin"
|
|
|
+ v-if="config.isHasPY"
|
|
|
+ ></span>
|
|
|
+ <span :class="['EN-16', config.isShowEN ? '' : 'disabled']" @click="changeEN" v-if="config.isHasEN"></span> -->
|
|
|
+ <SvgIcon
|
|
|
+ icon-class="repeat"
|
|
|
+ size="16"
|
|
|
+ :class="['Repeat-16', isRepeat ? '' : 'disabled']"
|
|
|
+ :style="{ color: isRepeat ? themeColor : 'rgba(0,0,0,0.1)' }"
|
|
|
+ @click="changeRepeat"
|
|
|
+ />
|
|
|
+ <SvgIcon
|
|
|
+ v-if="config.isHasPY"
|
|
|
+ icon-class="PinYin"
|
|
|
+ size="16"
|
|
|
+ :class="['pinyin-16', config.isShowPY ? '' : 'disabled']"
|
|
|
+ :style="{ color: themeColor }"
|
|
|
+ @click="changePinyin"
|
|
|
+ />
|
|
|
+ <SvgIcon
|
|
|
+ v-if="config.isHasEN"
|
|
|
+ icon-class="PinYin"
|
|
|
+ size="16"
|
|
|
+ :class="['EN-16', config.isShowEN ? '' : 'disabled']"
|
|
|
+ :style="{ color: themeColor }"
|
|
|
+ @click="changeEN"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<div :id="'screen-' + mathNum" class="voice-full-screen">
|
|
|
<Voicefullscreen
|
|
|
v-if="isFull && resObj"
|
|
|
@@ -443,7 +518,7 @@ export default {
|
|
|
'TaskModel',
|
|
|
'colLength',
|
|
|
'isFull',
|
|
|
- 'multilingualTextList',
|
|
|
+ 'multilingual',
|
|
|
],
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -461,6 +536,7 @@ export default {
|
|
|
mathNum: Math.random().toString(36).substr(2),
|
|
|
ed: undefined,
|
|
|
refresh: true,
|
|
|
+ multilingualTextList: {},
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
@@ -622,6 +698,10 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
handleData() {
|
|
|
+ this.curQue.multilingual.forEach((item) => {
|
|
|
+ let trans_arr = item.translation.split('\n');
|
|
|
+ this.$set(this.multilingualTextList, item.type, trans_arr);
|
|
|
+ });
|
|
|
let resArr = [];
|
|
|
let sentArrTotal = [];
|
|
|
let timeArr = [];
|
|
|
@@ -1036,5 +1116,14 @@ export default {
|
|
|
color: rgba(0, 0, 0, 85%);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ .multilingual-para {
|
|
|
+ word-break: break-word;
|
|
|
+
|
|
|
+ &-center {
|
|
|
+ text-align: center;
|
|
|
+ text-indent: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
</style>
|