| 
					
				 | 
			
			
				@@ -6,6 +6,8 @@ import { Button, Field, showToast } from 'vant'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import MUploader from '@/components/m-uploader'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { api_userMusicDetail, api_userMusicSave } from '../api'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { useRoute, useRouter } from 'vue-router'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import videoBg from '../images/video-bg.png'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { postMessage } from '@/helpers/native-message'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   name: 'creation-edit', 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -36,6 +38,24 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 截图 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const onCropper = () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      postMessage( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          api: 'videoCrop', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          content: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            url: state.musicDetail.videoUrl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        res => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          if (res?.content.videoCover) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            state.videoImg = res.content.videoCover; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     onMounted(async () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const { data } = await api_userMusicDetail(state.id); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -53,6 +73,25 @@ export default defineComponent({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <MHeader border={false} /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         </MSticky> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class={[styles.section, styles.sectionVideo]}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <img src={state.videoImg || videoBg} class={styles.videoBg} /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div class={styles.btnGroup}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <MUploader 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              class={styles.btnImg} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              cropper 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              deletable={false} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              onUploadChange={img => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (img.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  state.videoImg = img[0]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              }} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            /> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div class={styles.btnCropper} onClick={onCropper}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              视频截取封面 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <div class={styles.section}> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				           <Field 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             rows={4} 
			 |