当前位置: 首页 > Web前端 > vue.js

uni-app附件上传选择Vue内嵌版本

时间:2023-03-31 20:16:49 vue.js

lsj-upload插件地址:https://ext.dcloud.net.cn/plu...不知道怎么用,但是可以导入示例工程,运行完整示例。希望对您有所帮助!插件使用有什么问题欢迎加入QQ讨论群:701468256如果对您有帮助,请点亮5颗小星星鼓励一下~使用说明该属性是否必填值类型默认值描述宽度否String100%containerwidthheightnoString80rpxContainerheightsizeNoNumber10附件尺寸上限(M)top,left,right,bottom否[Number,String]0设置控件的绝对位置,仅在App端position=absolute时有效side,如果其他端需要绝对定位,可以在外层自行设置csspositionstylevalue否Number0上传进度,通过v-model双向绑定childId否StringlsjUploadcontrolid(只对APP有效,尽量命名每个控件唯一的Id)position否String静态控件排版位置(只对APP有效,static=控件随页面滚动;absolute=控件绝对定位在页面上,不随页面滚动窗口的内容;nvue只支持absolute)@inputNoFunctionvalue上传进度变化时回调@callback为FunctionObject上传成功时回调ref调用函数方法输入参数类型说明创建文件管理器createObject初始化上传文件的必要参数。参数见下文功能说明。关闭文件管理器close-APP端,手动关闭webview层,用于切换tab视图。查看示例项目vue:选择附件上传功能说明/**/exportdefault{data(){return{标签页ex:0,percent:''}},onReady(){//初始化参数并创建和上传DOMthis.onCreate();},methods:{//app端切换tabs示例onTab(tabIndex){this.tabIndex=tabIndex;if(tabIndex==0){//因为创建webview时需要获取按钮位置,所以需要nextTick然后调用createthis.$nextTick(()=>{this.onCreate();})}else{this.$refs.lsjUpload.close();}},onCreate(){//初始化参数并创建上传DOMthis.$refs.lsjUpload.create({//#ifdefAPP-PLUScuWebview:this.$mp.page.$getAppWebview(),//App必须被传递//#endifurl:'https://www.example.com/upload',//替换成你的接口地址名称:'file',//附件键debug:true,//根据自定义请求头到您的接口要求标头:{'Authorization':'token'},//根据你的接口需求自定义body参数formData:{'orderId':1000}});},onInput(e){console.log('上传进度',e);},onCallback(e){console.log('上传结果',e);}}}温馨提示,如果对文件上传的描述不够清楚,如何调用可以导入完整的示例项目运行体验查看APP端,请优先调试Android,然后在iOS端运行上传成功。如果iOS返回status=0,需要开启后台允许跨域;header的Content-Type类型必须和服务器要求一致,否则附件收不到(如果服务器没有明文规定,那就不要写,使用默认匹配)服务器不知道如何配置跨域可以加群咨询,具体百度~欢迎加入QQ讨论群:701468256欢迎加入QQ讨论群:701468256欢迎加入QQ讨论群:701468256请点亮5颗小星星鼓励一下~如果能帮到你,请点亮5颗小星星鼓励~如果能帮到你,请点亮5颗小星星鼓励~