您的位置:首页 > Web前端 > AngularJS

关于ionic上传下载,进度条百分比显示,打开文件问题

2018-01-30 10:04 1186 查看
我看了半天ionic的文档都没有看到我想要的进度条展示的样子,
我想要的是什么样的呢?哈哈
是这样的


但是不知道是人品问题还是什么问题,我没找到这样的样式。
所以我就用了另外一种方式去替代它



我的目的是用于展示上传与下载文件的进度,
首先当然是需要安装一些插件:
cordova-plugin-file
cordova-plugin-file-opener2     这是打开手机的文件
cordova-plugin-file-transfer    这是上传下载
cordova-plugin-filechooser      这是选择手机文件


再做一些前提工作





然后就是上传参数的准备内容



这里需要注意的就是有个很坑的参数chunkedMode,因为我在这坑摔倒过,默认情况下它是以数据块流模式上传的,主要是用于上传那些直播视频类的文件,就是一直在上传的。我只是上传文件或图片的,因此这里就要令它为false。

params:{}是写入我要传的参数,这里我传的是上传文件时的用户名,

mimeType是文件类型,主要看需求,这里就列出一些常用的 



准备好了之后就开始进入主题了



这里我是点击跳转就进入另一个页面下载的,所以一进入方法我就开始显示loading,

onProgress是fileTransfer的一个记录进度的方法,具体可以去看下官方文档。

变量now在上传下载的过程会一直改变的,完成的时候就会显示1,

如果我们要以别的形式显示就乘于某个数,这里我乘以100.再用个定时器去改变我目前显示的上传进度。

然后就发送上传的请求,拿到返回值就证明上传成功,我这里是code200为上传成功,所以这时就要把定时器关掉,loading也关掉,再写入你需要的操作。



下载也是同理,这里需要说明一下下载,第一个参数是请求的url,第二个参数是表示设备上的文件的文件系统url,



这里我是将它应用程序特定的数据文件放在外部存储上,你也可以保存在不同地方,具体可以去ionic文档看看,看下面这个列表也行



File Opener是用于预览文件的(一般是配合文件的下载一起用,下载后一般需要打开文件),第一个参数url就是刚刚下载后拿到的url,需不需要编码解码就看具体情况,在这里我是需要的解码的。第二个参数是文件类型。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐