DCloud_UNI_GSQ
DCloud_UNI_GSQ
  • 发布:2019-01-26 11:31
  • 更新:2021-04-02 10:08
  • 阅读:83362

uni-app 选择和上传非图像、视频文件

分类:uni-app

首先小程序端不支持上传非图像视频文件。

然后App和H5端,参考: https://uniapp.dcloud.io/api/media/file

H5端在2.9.9以前,可以使用如下方法:

  1. 使用web-view组件
    使用 web-view 组件,在 web-view 组件内可以使用 input 元素进行选择,使用表单或者 xhr 上传。

  2. 使用 js 创建 input 元素进行选择
    使用 xhr 上传(或者转 base64、Object-URL 使用 uni.uploadFile 上传),如果对 dom 不熟悉建议使用通用方法。

<template>  
    <view>  
        <view ref="input" class="input">  

        </view>  
    </view>  
</template>  

<script>  
    export default {  
        mounted() {  
            var input = document.createElement('input')  
            input.type = 'file'  
            input.onchange = (event) => {  
                console.log(event)  
            }  
            this.$refs.input.$el.appendChild(input)  
        }  
    }  
</script>  

<style>  
</style>

上传文件,推荐使用uniCloud的云存储和cdn,免费!且提供方便安全的客户端直传,详见:https://uniapp.dcloud.io/uniCloud/storage?id=uploadfile

15 关注 分享
Trust 真的没昵称 286622241@qq.com sonicsunsky@qq.com jclarry chenxiaoke 871778055@qq.com shanjixiaboss@163.com 1509618077@qq.com dcloud@yunfanda.com 25897758@qq.com zzoo19920905@gmail.com D_cloud_Jacob 搁浅 btfoot@sina.com

要回复文章请先登录注册

阿康

阿康

官方文档,太垃圾了,选择和上传非图像、视频文件,这种基础api都没有,还玩个毛线uniapp
2021-04-02 10:08
1033067651@qq.com

1033067651@qq.com

我用uni.uploadFile上传的时候后台会根据文件的大小多了一个等待时间,这是为啥,大家有遇到过吗
2021-03-22 16:30
郭加明

郭加明

可怜 简单功能实现不了 市场搜集错误很多
2021-03-18 14:28
2838950704@qq.com

2838950704@qq.com

回复 圣名科技 :
我在插件市场找了一圈 大多数都是支持android的 请问你用的什么插件啊
2021-03-16 13:27
圣名科技

圣名科技

回复 2838950704@qq.com :
我去插件市场找了些,可以拿到文件,但是不知道怎么上传。
2021-03-16 09:57
2838950704@qq.com

2838950704@qq.com

回复 圣名科技 :
关键是uni.chooseFileApp上也没法选择文件啊
2021-03-16 09:14
圣名科技

圣名科技

```
uni.uploadFile 只能上传:image/video/audio这些文件类型
txt,pdf,doc这些怎么上传???
我就想问一下,app如何上传非图像、视频文件????????
然后这个文档指向uni.chooseFile选择文件有什么用???
我要的是上传不是选择。能不能一句话就行了,绕来绕去?

```
2021-03-08 13:30
1695052462@qq.com

1695052462@qq.com

回复 菜鸡一个 :
我的个人项目上线了,可以使用的主要啃不是这个问题,我的是和后台的字段和前端的不一致导致的
2021-02-09 09:59
1695052462@qq.com

1695052462@qq.com

回复 1174668042@qq.com :
可以,我的个人上线项目就是使用这个uploadfile的
2021-02-09 09:57
1695052462@qq.com

1695052462@qq.com

回复 1174668042@qq.com :
那是你和后台协商不对,请求报文不对,特别是字段要一致
2021-02-09 09:57