当前位置: 首页 > news >正文

xe-upload上传文件插件

1.xe-upload地址:文件选择、文件上传组件(图片,视频,文件等) - DCloud 插件市场

2.由于开发app要用到上传文件组件,uni.chooseFile在app上不兼容,所以找到了xe-upload,兼容性很强,强烈推荐!!!

说明

不占用页面位置的上传组件;

H5、App、微信小程序中可上传图片,视频和文件;其他端暂时只能上传图片和视频

上传图片通过chooseMedia及chooseImage实现

上传视频通过chooseMedia及chooseVideo实现

H5端上传文件通过chooseFile实现

App上传文件通过renderjs实现

微信小程序上传文件通过chooseMessageFile实现

3.使用方法,到插件市场将插件包导入到自己的项目,然后下列方式调用。

<!-- 也可以下载示例项目查看使用方法 -->
<template><view><button @click="handleUploadClick">上传</button><xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload></view>
</template><script>
export default {data() {return {uploadOptions: {// url: 'http://192.168.31.185:3000/api/upload', // 不传入上传地址则返回本地链接},};},methods: {handleUploadClick() {// 使用默认配置则不需要传入第二个参数// type: ['image', 'video', 'file'];this.$refs.XeUpload.upload('file', {});// this.$refs.XeUpload.upload('image', {//  count: 6,//  sizeType: ['original', 'compressed'],//  sourceType: ['album'],// });},handleUploadCallback(e) {// e.type: ['choose', 'success', 'warning']// choose 是options没有传入url,返回临时链接时触发// success 是上传成功返回对应的数据时触发// warning 上传或者选择文件失败触发// ......},},
};
</script>

 4.回调绑定callback方法:

回调返回的参数:

'callback.type === success' : [{"size": 176579, // 选择的文件的大小"name": "Kafka.pdf", // 选择的文件的名称(小程序端可能会没有)"type": "application/pdf","tempFilePath": "_doc/uniapp_temp/Kafka-16988473328760.pdf", // 临时路径"fileType": "file", // 文件类型[image, video, file]"response": {"result": {"fileName": "Kafka.pdf","filePath": `http://localhost:3000/upload/e51d814b649122fc64892d0bc6383d07.pdf`,},"success": true,}, // 上传返回的信息}
]'callback.type === choose' : [{"size": 176579, // 选择的文件的大小"name": "Kafka.pdf", // 选择的文件的名称(小程序端可能会没有)"type": "application/pdf","tempFilePath": "_doc/uniapp_temp/Kafka-16988473328760.pdf", // 文件临时路径"fileType": "file", // 文件类型[image, video, file]}
]

5.注意事项

1、options入参中如果url为空,则choose回调的data列表中只有选择文件能得到的信息和临时路径,临时路径可用于自定义上传方法;传入url选择文件后会自动上传到服务器,此时choose回调不会触发,而是执行success回调,success回调的data列表会包括选择文件能得到的信息
2、当uni.chooseMedia可用时,会优先使用uni.chooseMedia
3、具体使用可下载示例项目运行查看完整示例

相关文章:

  • 堆和二叉树的概念和操作
  • 【算法笔记】贪心算法
  • node20的安装和vue的入门准备
  • Python语言基础知识详解:分支结构控制语句
  • babel和loader的关系
  • 【数据挖掘】时间序列预测-时间序列的平稳性
  • 猿人学web端爬虫攻防大赛赛题第15题——备周则意怠-常见则不疑
  • DeepSeek:重构人类文明的智能引擎
  • 使用CubeMX新建USART1不定长接收工程
  • log4cpp 编译说明文档
  • Transformer数学推导——Q25 分析视觉-语言模型中区域注意力(Region Attention)的边界框投影公式
  • 机器学习day2-seaborn绘图练习
  • RagFlow文档切块提升
  • 基于亚马逊云科技搭建企业问答系统
  • LeetCode42_接雨水
  • 北冰洋:突破热力极限!99℃离心热泵机组,开启工业节能新时代!
  • GCC 15.1 发布,包含 COBOL 编译器及多项其他改进
  • 再学GPIO(一)
  • Java 设计模式
  • deepSeek浅谈对vue的mixin的理解,用于什么应用场景?
  • 北美票房|《罪人》遭媒体唱衰,好莱坞业内人士集体反击
  • 屋顶上的阳光与火光:战争如何改变了加沙的能源格局
  • 关键词看中国经济“一季报”:稳,开局良好看信心
  • 商务部:汽车流通消费改革试点正在加快推进
  • 王旭任甘肃省副省长
  • 乌代表团与美特使在伦敦举行会谈,双方同意继续对话