Appearance
上传数据
Upload
上传数据
这里整理上传管理器和上传工具中最常用的数据格式,包括上传元数据、创建素材参数和浏览器/构建要求。
快速索引
| 类型 / 能力 | 用途 |
|---|---|
SXMeta | 上传任务元数据,记录上传状态、目标目录、素材创建选项等。 |
uploadOSS | 服务层上传工具,处理 OSS token、上传进度和可选创建素材。 |
CreateAssetOptions | 上传后创建业务素材记录的参数。 |
| 浏览器与构建要求 | SharedWorker、BroadcastChannel、worker URL、生产路径配置。 |
SXMeta
@mbjia/upload-manager 上传元数据:
ts
type SXMeta = {
uploadingItemId: string
uploadType?: string
dir?: string
dirName?: string
handle?: FileSystemFileHandle
rotate?: boolean
analysis?: boolean
createAsset?: boolean
waitForTranscoding?: boolean
errorStatus?: number
status?: number
assetId?: string
id?: string
asset?: any
error?: any
hide?: number
}| 字段 | 类型 | 说明 |
|---|---|---|
uploadingItemId | string | 上传项 id。 |
uploadType | string | 上传类型。 |
dir | string | 目录 id。 |
dirName | string | 目录名称。 |
handle | FileSystemFileHandle | 文件系统句柄。 |
rotate | boolean | 是否旋转。 |
analysis | boolean | 是否进行素材分析。 |
createAsset | boolean | 是否创建业务素材记录。 |
waitForTranscoding | boolean | 是否等待转码。 |
errorStatus | number | 错误状态。 |
status | number | 上传状态。 |
assetId | string | 创建后的素材 id。 |
error | any | 上传错误信息。 |
uploadOSS
ts
uploadOSS(fileList, {
createAssetOptions: {
assetType: 50,
dirId: '0',
useTranscodingAsset: true,
rotate: false,
},
uploadType: 'mbjia_user_file',
onProgress(percent, status, abort) {
console.log(percent)
},
})CreateAssetOptions
ts
type CreateAssetOptions = {
assetType: number
dirId?: string | number
ossName?: string
hide?: boolean
useTranscodingAsset?: boolean
rotate?: boolean
}| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
assetType | number | 是 | 素材类型。 |
dirId | string | number | 否 | 目标目录 id。 |
ossName | string | 否 | OSS 文件名。 |
hide | boolean | 否 | 是否隐藏。 |
useTranscodingAsset | boolean | 否 | 是否使用转码素材。 |
rotate | boolean | 否 | 是否旋转。 |
浏览器与构建要求
- 支持
SharedWorker - 支持
BroadcastChannel - 构建工具能处理
new URL('./SharedWorker', import.meta.url) - 生产混剪项目配置
process.env.sharedWorkerPath