EASYAIuniappNewUI/dist/build/mp-weixin/components/dynamic/AudioUpload.js
2025-02-08 18:50:38 +08:00

2 lines
2.3 KiB
JavaScript

"use strict";const e=require("../../common/vendor.js"),o=require("../../utils/request.js");if(!Array){(e.resolveComponent("fui-icon")+e.resolveComponent("fui-col")+e.resolveComponent("fui-progress")+e.resolveComponent("fui-row"))()}Math||(l+(()=>"../firstui/fui-icon/fui-icon.js")+(()=>"../firstui/fui-col/fui-col.js")+(()=>"../firstui/fui-progress/fui-progress.js")+(()=>"../firstui/fui-row/fui-row.js")+a)();const l=()=>"../common/MyTitle.js",a=()=>"../common/ParamCard.js",s=e.defineComponent({__name:"AudioUpload",props:e.mergeModels({title:{default:"上传"},options:{}},{modelValue:{default:""},modelModifiers:{}}),emits:["update:modelValue"],setup(l){const a=e.useModel(l,"modelValue"),s=e.ref([]),n=e.ref(""),u=e.ref("默认音频");let t=null;const r=e.ref(0),i=e.ref(0),p=e.ref(0);e.onReady((()=>{s.value=a.value?[a.value]:[]})),e.watch(s,(()=>{console.log("audioList",s.value[0]),a.value=s.value[0],s.value[0]&&(n.value=s.value[0],u.value=s.value[0].split("/").pop()||"默认音频",c())}));const c=()=>{t&&t.destroy(),t=e.index.createInnerAudioContext(),t.autoplay=!1,t.src=n.value,t.onPlay((()=>{console.log("开始播放")})),t.onError((e=>{console.log(e.errMsg),console.log(e.errCode)})),t.onTimeUpdate((()=>{r.value=(null==t?void 0:t.currentTime)||0,i.value=(null==t?void 0:t.duration)||0,p.value=i.value>0?r.value/i.value*100:0}))},v=()=>{e.wx$1.chooseMessageFile({count:1,type:"file",extension:["mp3","wav"],success(e){const o=e.tempFiles[0];d(o)},fail(e){console.error("选择文件失败",e)}})},d=async e=>{try{const l=await(async e=>{const l=e.path;return new Promise((async(e,a)=>{const s=await o.uploadFile(l);console.log("uploadResult",s),s&&e(s)}))})(e);l&&(n.value=l,u.value=e.name,s.value=[l],console.log("上传成功",l))}catch(l){console.error("上传失败",l)}},m=e.ref(!1),f=()=>{t&&(t.stop(),t.play()),m.value=!0},g=()=>{t&&(t.pause(),console.log("暂停播放"),m.value=!1)};return e.onUnmounted((()=>{t&&t.destroy()})),(o,l)=>({a:e.p({title:o.title}),b:e.o(f),c:!m.value,d:e.p({name:"suspend"}),e:e.o(g),f:m.value,g:e.p({name:"play"}),h:e.p({span:3}),i:e.t(u.value||o.),j:e.p({percent:p.value.toFixed(0)||0}),k:e.p({span:21}),l:e.p({"margin-bottom":"24rpx"}),m:e.o(v),n:e.p({name:"pullup"}),o:e.p({span:24}),p:e.p({"margin-bottom":"24rpx"})})}}),n=e._export_sfc(s,[["__scopeId","data-v-921b81d6"]]);wx.createComponent(n);