Skip to content

Functions

saveAs()

FileSaver 现代版,支持通过 fetcher 获取文件流

Param

文件下载地址或 Blob 数据

Param

文件名或配置项

Param

配置项

Call Signature

saveAs(data, options?): Promise<void>

FileSaver 现代版,支持通过 fetcher 获取文件流

Parameters
ParameterTypeDescription
dataSaveAsData文件下载地址或 Blob 数据
options?SaveAsOptions配置项
Returns

Promise<void>

Param

文件下载地址或 Blob 数据

Param

文件名或配置项

Param

配置项

Example
ts
// 默认配置 fetcher
saveAs.defaults = {
  fetcher(url, options) {
    const res = fetch(url, { method: 'GET' })
    const filename = parseContentDisposition(res.headers.get('Content-Disposition')).filename
    // 如果附件存在文件名,则设置下载文件名为附件名称
    if (filename) options.filename = filename
    // 返回 Blob 数据
    return res.blob()
  }
}

// 调用接口下载文件
saveAs('/api/example')

// 使用原 FileSaver.saveAs
saveAs('http://example.com/example.img', { filename: '测试.img', fetcher: undefined })

Call Signature

saveAs(data, filename?, options?): Promise<void>

FileSaver 现代版,支持通过 fetcher 获取文件流

Parameters
ParameterTypeDescription
dataSaveAsData文件下载地址或 Blob 数据
filename?string文件名
options?SaveAsOptions配置项
Returns

Promise<void>

Param

文件下载地址或 Blob 数据

Param

文件名或配置项

Param

配置项

Example
ts
// 默认配置 fetcher
saveAs.defaults = {
  fetcher(url, options) {
    const res = fetch(url, { method: 'GET' })
    const filename = parseContentDisposition(res.headers.get('Content-Disposition')).filename
    // 如果附件存在文件名,则设置下载文件名为附件名称
    if (filename) options.filename = filename
    // 返回 Blob 数据
    return res.blob()
  }
}

// 调用接口下载文件
saveAs('/api/example')

// 使用原 FileSaver.saveAs
saveAs('http://example.com/example.img', '测试.img', { fetcher: undefined })

Interfaces

SaveAsOptions

Properties

PropertyTypeDescription
fetcher?PromiseFn<[string, SaveAsOptions]>通过查询获取文件流,支持动态修改文件名,最终返回非 Blob 数据时将停止后续操作
filename?string下载文件名称

Namespaces