|  | @@ -27,8 +27,8 @@
 | 
	
		
			
				|  |  |          <label class="subtitle">内容</label>
 | 
	
		
			
				|  |  |          <ul>
 | 
	
		
			
				|  |  |            <li v-for="(item, i) in data.option_list" :key="i" class="content-item">
 | 
	
		
			
				|  |  | -            <span class="question-number" @dblclick="changeOptionType(data)">
 | 
	
		
			
				|  |  | -              {{ computedQuestionNumber(i, data.option_number_show_mode) }}.
 | 
	
		
			
				|  |  | +            <span class="question-number" title="双击切换序号类型" @dblclick="changeOptionType(data)">
 | 
	
		
			
				|  |  | +              {{ computedQuestionNumber(i, data.option_number_show_mode) }}
 | 
	
		
			
				|  |  |              </span>
 | 
	
		
			
				|  |  |              <el-input v-model="item.content" placeholder="输入内容" @blur="handleItemAnswer(item)" />
 | 
	
		
			
				|  |  |              <UploadAudio
 | 
	
	
		
			
				|  | @@ -136,7 +136,7 @@ import QuestionMixin from '@/views/exercise_questions/create/components/common/Q
 | 
	
		
			
				|  |  |  import UploadAudio from '../common/UploadAudio.vue';
 | 
	
		
			
				|  |  |  import SoundRecord from '../common/SoundRecord.vue';
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -import { changeOptionType } from '@/views/exercise_questions/data/common';
 | 
	
		
			
				|  |  | +import { changeOptionType, addTone } from '@/views/exercise_questions/data/common';
 | 
	
		
			
				|  |  |  import {
 | 
	
		
			
				|  |  |    getOption,
 | 
	
		
			
				|  |  |    ChooseToneData,
 | 
	
	
		
			
				|  | @@ -161,19 +161,6 @@ export default {
 | 
	
		
			
				|  |  |        toneTypeList,
 | 
	
		
			
				|  |  |        data: JSON.parse(JSON.stringify(ChooseToneData)),
 | 
	
		
			
				|  |  |        matically_pinyin_obj: {}, // 存放转成声调的拼音
 | 
	
		
			
				|  |  | -      tone_data: [
 | 
	
		
			
				|  |  | -        ['ā', 'á', 'ǎ', 'à', 'a'],
 | 
	
		
			
				|  |  | -        ['ō', 'ó', 'ǒ', 'ò', 'o'],
 | 
	
		
			
				|  |  | -        ['ē', 'é', 'ě', 'è', 'e'],
 | 
	
		
			
				|  |  | -        ['ī', 'í', 'ǐ', 'ì', 'i'],
 | 
	
		
			
				|  |  | -        ['ū', 'ú', 'ǔ', 'ù', 'u'],
 | 
	
		
			
				|  |  | -        ['ǖ', 'ǘ', 'ǚ', 'ǜ', 'ü'],
 | 
	
		
			
				|  |  | -        ['Ā', 'Á', 'Â', 'À', 'A'],
 | 
	
		
			
				|  |  | -        ['Ō', 'Ó', 'Ô', 'Ò', 'O'],
 | 
	
		
			
				|  |  | -        ['Ē', 'É', 'Ê', 'È', 'E'],
 | 
	
		
			
				|  |  | -        ['Ī', 'Í', 'Î', 'Ì', 'I'],
 | 
	
		
			
				|  |  | -        ['Ū', 'Ú', 'Û', 'Ù', 'U'],
 | 
	
		
			
				|  |  | -      ],
 | 
	
		
			
				|  |  |        res_arr: [],
 | 
	
		
			
				|  |  |      };
 | 
	
		
			
				|  |  |    },
 | 
	
	
		
			
				|  | @@ -217,7 +204,7 @@ export default {
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |        this.matically_pinyin_obj[mark] = this.res_arr
 | 
	
		
			
				|  |  |          .map((item) =>
 | 
	
		
			
				|  |  | -          item.map(({ number, con }) => (number && con ? this.addTone(Number(number), con) : number || con || '')),
 | 
	
		
			
				|  |  | +          item.map(({ number, con }) => (number && con ? addTone(Number(number), con) : number || con || '')),
 | 
	
		
			
				|  |  |          )
 | 
	
		
			
				|  |  |          .filter((item) => item.length > 0)
 | 
	
		
			
				|  |  |          .join(',');
 | 
	
	
		
			
				|  | @@ -243,33 +230,6 @@ export default {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |        this.res_arr.push(numList.length === 0 ? [{ con: valItem }] : numList);
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    addTone(number, con) {
 | 
	
		
			
				|  |  | -      const zmList = ['a', 'o', 'e', 'i', 'u', 'v', 'A', 'O', 'E', 'I', 'U'];
 | 
	
		
			
				|  |  | -      let cons = con;
 | 
	
		
			
				|  |  | -      if (number) {
 | 
	
		
			
				|  |  | -        for (let i = 0; i < zmList.length; i++) {
 | 
	
		
			
				|  |  | -          let zm = zmList[i];
 | 
	
		
			
				|  |  | -          if (con.includes(zm)) {
 | 
	
		
			
				|  |  | -            let zm2 = this.tone_data[i][number - 1];
 | 
	
		
			
				|  |  | -            if (con.includes('iu')) {
 | 
	
		
			
				|  |  | -              zm2 = this.tone_data[4][number - 1];
 | 
	
		
			
				|  |  | -              cons = con.replace('u', zm2);
 | 
	
		
			
				|  |  | -            } else if (con.includes('ui')) {
 | 
	
		
			
				|  |  | -              zm2 = this.tone_data[3][number - 1];
 | 
	
		
			
				|  |  | -              cons = con.replace('i', zm2);
 | 
	
		
			
				|  |  | -            } else if (/yv|jv|qv|xv/.test(con)) {
 | 
	
		
			
				|  |  | -              zm2 = this.tone_data[4][number - 1];
 | 
	
		
			
				|  |  | -              cons = con.replace('v', zm2);
 | 
	
		
			
				|  |  | -            } else {
 | 
	
		
			
				|  |  | -              cons = con.replace(zm, zm2);
 | 
	
		
			
				|  |  | -            }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -            break;
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      return cons;
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  |      // 答案
 | 
	
		
			
				|  |  |      handleItemAnswer(item) {
 | 
	
		
			
				|  |  |        const index = this.data.answer.answer_list.findIndex((items) => items.mark === item.mark);
 |