BUI

其它版本:

API for BUI 1.6.x

Show:

bui.download Class

下载控件, 支持安卓下载图片, web不支持, 默认使用web下载,切换原生,需要更改needNative参数

预览地址: demo

下载文件在本地,web不支持

getFile: 获取文件,获取不到则下载文件
start: 下载文件
stop: 停止下载
toBase64: 下载的图片转换成可以插入页面的图片
widget: 获取依赖的控件

Constructor

bui.download

(
  • option
)

Parameters:

  • option Object
    • [url] String optional

      下载的地址, 中文地址, needEncode 参数应该设置为true

    • [needEncode] Boolean optional

      1.5.1新增 地址是否需要转码 默认: false | true , 如果是中文地址,需要转码

    • [data] Object optional

      请求下载需要传的参数

    • [timeout] Number optional

      触发timeout的时间默认60000

    • [folderName] String optional

      文件夹名称,默认是download

    • [showProgress] Boolean optional

      是否显示进度条 默认true

    • [needNative] Boolean optional

      1.5.1新增, 是否使用原生下载, 不受bui.isWebapp状态决定 默认 true|false 通过这个切换对应的效果,可以通过全局配置 bui.config.download = {needNative:true}

    • [onProgress] Function optional

      自定义进度条回调,接收百分比值

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

js:

       // 1. 初始化 这里如果传url初始化,则马上下载
                                           var uidownload = bui.download();
                                    
                                           // 2. 开始下载
                                           uiUpload.start({
                                               data: null
                                           })
                                    

Methods

getFile

(
  • option
)
chainable

获取下载的文件,如果没有则重新下载

Parameters:

  • option Object

    [参数同初始化一样]

    • url String

      [下载地址]

    • fileName String

      [保存的文件名,含后缀]

    • [folderName] String optional

      保存的文件夹, 默认download文件夹,可以不用传

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

       uiDownload.getFile({
                                                           url: "http://",
                                                           fileName:"",
                                                           onSuccess: function (url,file) {
                                                               console.log(url);
                                                           }
                                                       })
                                                

open

(
  • [option]
)
chainable

Defined in src/scripts/mix/web/bui.download.js:362

Available since 1.5.2

本地程序打开文件, web不支持

Parameters:

  • [option] Object optional
    • [url] String optional

      文件路径,一般是通过getFile得到的路径

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

       uiDownload.open({
                                                           url: "file://",
                                                           onSuccess: function(url){
                                                               // 文件的地址
                                                               console.log(url)
                                                           }
                                                       })
                                                

removeFile

(
  • option
)
chainable

Defined in src/scripts/mix/web/bui.download.js:301

Available since 1.5.2

删除文件

Parameters:

  • option Object

    [参数同初始化一样]

    • [fileName] String optional

      删除的文件名称

    • [folderName] String optional

      删除的文件名称在哪个文件夹, 默认是: "download", 一般无需更改

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

       uiDownload.removeFile({
                                                           fileName: "customName.jpg",
                                                           onSuccess: function (url,file) {
                                                               console.log(url);
                                                           }
                                                       })
                                                

removeFolder

(
  • option
)
chainable

Defined in src/scripts/mix/web/bui.download.js:334

Available since 1.5.2

删除文件夹,默认是 "download"

Parameters:

  • option Object

    [参数同初始化一样]

    • [folderName] String optional

      删除的文件名称在哪个文件夹, 默认是: "download"

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

       uiDownload.removeFolder({
                                                           folderName: "customName.jpg",
                                                           onSuccess: function (url,file) {
                                                               console.log(url);
                                                           }
                                                       })
                                                

start

(
  • [option]
)
chainable

开始下载

Parameters:

  • [option] Object optional

    参数同初始化一样,查看最顶部的参数

Example:

       uiDownload.start({
                                                           url: "http://"
                                                       })
                                                

stop

() chainable

停止下载

Example:

       uiDownload.stop()
                                                

toBase64

(
  • option
)
chainable

把选择的图片文件转换成base64地址,可以直接展示在页面上

Parameters:

  • option Object
    • [data] String optional

      通过getFile得到的文件

    • [onSuccess] Function optional

      成功的回调

    • [onFail] Function optional

      失败的回调

Example:

       uiDownload.toBase64({
                                                           data: "file:///", //本地图片路径
                                                           onSuccess: function (imgurl) {
                                                               $("#id").append('<img src="'+imgurl+'" />')
                                                           }
                                                       });
                                                

widget

(
  • [name]
)

获取依赖的控件

Parameters:

  • [name] String optional

    依赖控件名 loading

Example:

       //获取依赖控件
                                                       var uiLoading = uiFile.widget("loading");
                                                
                                                       //使用uiLoading的方法
                                                       uiLoading.start();