美文网首页
2019-10-24 mui文件下载

2019-10-24 mui文件下载

作者: 追夢的蚂蚁 | 来源:发表于2019-10-24 18:19 被阅读0次

    关键代码如下

    1.HTML

    <button onclick="downloadFile(this)">点击下载</button>

    2.JS
            function downloadFile(obj) {
                plus.nativeUI.showWaiting("正在下载...");
    
                var filetype = 'docx'; // 附件类型
                var filenames = '新建Microsoft Word文档'; // 附件名称
                var filedownurl = "http://10.79.112.42:8080/test"; //附件路径
                //初始化下载对象
                var dtask = null;
                //判断文件是否已经下载
    
                plus.io.resolveLocalFileSystemURL('_downloads/' + filenames, function(entry) {
    
                    if(entry.isFile) {
                        mui.toast('已经下载');
                        var btnArray = ['否', '是']; //弹框消息确认是否打开附件
                        mui.confirm('是否打开附件查看?', '下载成功', btnArray, function(e) {
                            plus.nativeUI.closeWaiting();
                            if(e.index == 1) { //打开附件
                                plus.runtime.openFile('_downloads/' + filenames, {}, function(e) {
                                    plus.nativeUI.alert('请先下载再预览!');
                                });
                            } else { //不打开
                            }
                        })
                    }
    
                }, function(e) {
                    if(dtask) {
                        mui.toast('下载任务已经存在');
                        return;
                    }
                    dtask = plus.downloader.createDownload(
                        filedownurl, {
                            method: 'GET'
                        },
                        function(d, status) {
                            mui.toast(d.filename);
                        });
                    dtask.addEventListener("statechanged", function(task, status) {
                        if(!dtask) {
                            return;
                        }
                        switch(task.state) {
                            case 1:
                                mui.toast('开始下载...');
                                break; //开始
                            case 2:
                                mui.toast('链接到服务器...');
                                break; //链接到服务器
                            case 3:
                                break;
                            case 4:
                                plus.nativeUI.closeWaiting();
                                mui.toast('下载完成');
                                var btnArray = ['否', '是']; //弹框消息确认是否打开附件
                                mui.confirm('是否打开附件查看?', '下载成功', btnArray, function(e) {
                                    plus.nativeUI.closeWaiting();
                                    if(e.index == 1) { //打开附件
                                        plus.runtime.openFile('_downloads/' + filenames, {}, function(e) {
                                            plus.nativeUI.alert('请先下载再预览!');
                                        });
                                    } else { //不打开
                                    }
                                })
                                break;
                        }
                    });
    
                    //|| filetype === 'exe' || filetype === 'bat' || filetype === 'html'
                    if(filetype === 'pdf' || filetype === 'exe' || filetype === 'bat' || filetype === 'html') {
                        plus.nativeUI.closeWaiting();
                        dtask.cancel(); //取消下载     
    
                    }
    
                    dtask.start();
    
                });
    
            }
    

    ···

    效果如图:

    下载效果

    相关文章

      网友评论

          本文标题:2019-10-24 mui文件下载

          本文链接:https://www.haomeiwen.com/subject/xjmdvctx.html