跳到内容

useBase64

分类
导出大小
771 B
最后更改
5 天前

响应式 base64 转换。支持纯文本、Buffer、文件、Canvas、对象、Map、Set 和图像。

演示

文本输入
Base64
Buffer 输入
new ArrayBuffer(1024)
Base64
文件输入
Base64
图像输入
Base64

用法

ts
import { useBase64 } from '@vueuse/core'
import { shallowRef } from 'vue'

const text = shallowRef('')

const { base64 } = useBase64(text)

如果你使用对象、数组、Map 或 Set,你可以在选项中提供序列化器。否则,你的数据将使用默认序列化器进行序列化。对象和数组将通过 JSON.stringify 转换为字符串。Map 和 Set 将分别在字符串化之前转换为对象和数组。

类型声明

显示类型声明
typescript
export interface UseBase64Options {
  /**
   * Output as Data URL format
   *
   * @default true
   */
  dataUrl?: boolean
}
export interface ToDataURLOptions extends UseBase64Options {
  /**
   * MIME type
   */
  type?: string | undefined
  /**
   * Image quality of jpeg or webp
   */
  quality?: any
}
export interface UseBase64ObjectOptions<T> extends UseBase64Options {
  serializer?: (v: T) => string
}
export interface UseBase64Return {
  base64: ShallowRef<string>
  promise: ShallowRef<Promise<string>>
  execute: () => Promise<string>
}
export declare function useBase64(
  target: MaybeRefOrGetter<string | undefined>,
  options?: UseBase64Options,
): UseBase64Return
export declare function useBase64(
  target: MaybeRefOrGetter<Blob | undefined>,
  options?: UseBase64Options,
): UseBase64Return
export declare function useBase64(
  target: MaybeRefOrGetter<ArrayBuffer | undefined>,
  options?: UseBase64Options,
): UseBase64Return
export declare function useBase64(
  target: MaybeRefOrGetter<HTMLCanvasElement | undefined>,
  options?: ToDataURLOptions,
): UseBase64Return
export declare function useBase64(
  target: MaybeRefOrGetter<HTMLImageElement | undefined>,
  options?: ToDataURLOptions,
): UseBase64Return
export declare function useBase64<T extends Record<string, unknown>>(
  target: MaybeRefOrGetter<T>,
  options?: UseBase64ObjectOptions<T>,
): UseBase64Return
export declare function useBase64<T extends Map<string, unknown>>(
  target: MaybeRefOrGetter<T>,
  options?: UseBase64ObjectOptions<T>,
): UseBase64Return
export declare function useBase64<T extends Set<unknown>>(
  target: MaybeRefOrGetter<T>,
  options?: UseBase64ObjectOptions<T>,
): UseBase64Return
export declare function useBase64<T>(
  target: MaybeRefOrGetter<T[]>,
  options?: UseBase64ObjectOptions<T[]>,
): UseBase64Return

SourceDemoDocs

贡献者

Anthony Fu
IlyaL
Anthony Fu
Robin
丶远方
Mikhailov Nikita
wheat
jelf

更新日志

v12.8.0 于 3/5/2025
7432f - feat(types): 弃用 MaybeRefMaybeRefOrGetter,使用 Vue 原生类型 (#4636)
v12.3.0 于 1/2/2025
59f75 - feat(toValue): 弃用 toValue,使用 Vue 原生类型
v12.1.0 于 12/22/2024
4b4bd - feat: 添加 Data URL 输出控制选项 (#4316)
v12.0.0-beta.1 于 11/21/2024
0a9ed - feat!: 移除 Vue 2 支持,优化打包并清理代码 (#4349)
v10.0.0-beta.5 于 4/13/2023
cb644 - refactor!: 移除 isFunctionisString 工具函数
v10.0.0-beta.4 于 4/13/2023
4d757 - feat(types)!: 重命名 MaybeComputedRefMaybeRefOrGetter
0a72b - feat(toValue): 重命名 resolveUnreftoValue

在 MIT 许可证下发布。