选择与表单

上传 AsamUpload

默认 resource 模式上传后保存规范化资源,显式 native 模式维护原始 fileList。

使用场景 ​

默认 resource 模式上传后保存规范化资源,显式 native 模式维护原始 fileList。两种模式的模型、事件与实例方法各有契约。

资源上传、校验与取消 ​

示例只使用本地异步 handler,不发送网络请求。upload 返回包含 id/name/url/mimeType/size 的资源;context 提供取消信号与进度报告。maxSizeBytes/validate 在上传前检查文件。复制源码包括 handler。

资源上传、校验与取消

展开源码

多文件与文件插槽 ​

multiple 模型必须是资源数组。file 插槽提供 item、file、index、remove、cancel;保留移除和取消入口。progress 由 handler 的 reportProgress 更新。

多文件与文件插槽

展开源码

原始文件列表与手动提交 ​

mode=native 使用 v-model:fileList 和原始 httpRequest/hooks。本地 httpRequest 调用 onSuccess,不发送请求;没有 resource modelValue 或资源事件。abort/clearFiles 操作原始上传实例。

原始文件列表与手动提交

展开源码

四档尺寸与上下文继承 ​

四个实例分别显式使用 large、big、default、small。下面省略 size 的实例随 ConfigProvider 响应切换;显式 size 覆盖祖先。面板本身没有 size 契约的入口不附加虚构尺寸属性。

四档尺寸与上下文继承

展开源码

原生照片墙、缩略图与受控重排 ​

native 模式完整承接 text、picture、picture-card 三种 listType。 完整说明。

v-model:fileList 为受控原始列表,使用方可重排或外部替换;uid 保持文件身份。 完整说明。

隐藏列表后的头像替换 ​

下面使用 native、showFileList=false 和 default 插槽呈现选择入口,成功后以头像替换入口内容。 完整说明。

头像替换、类型大小校验与对象 URL 回收

展开源码

此 default 插槽的对象 URL 由示例自己创建,使用方负责替换时回收旧 URL、卸载时回收最后一个 URL。原生列表自动创建的缩略图 URL 与这条路径不同。示例拆出 Avatar.vue,在卸载时中止上传实例并忽略迟到回调;自定义 Promise 的物理取消仍由请求实现负责。重新挂载会回到空头像状态。

目录选择和拖放路径 ​

目录上传由 native 的 directory 承接。 完整说明。

目录选择与拖放相对路径

展开源码

resource 模式保持规范化资源模型,其 transport 输入是原始 File;不会擅自将目录层次塞入资源 id/url。 完整说明。

数量限制、覆盖和请求钩子 ​

limit 与 onExceed 组合控制超量选择。 完整说明。

限制覆盖、原生请求与手动提交

展开源码

原生请求参数 action/method/headers/name/data/withCredentials 交给 httpRequest;data 支持对象、函数和 Promise。 完整说明。

资源 transport、转换、取消与回填 ​

upload handler 和 request 二选一。 完整说明。

资源 transport、转换、取消和回填

展开源码

transform 返回合法 id/name/url/mimeType/size 资源,失败、重复 id 和错误 metadata 不写入模型。 完整说明。

cancel/clear/作用域失效及卸载中止 context,迟到完成不会写回;进度、成功、错误、cancelled、remove 事件保持各自 payload。 完整说明。

ASAM 扩展与迁移 ​

ASAM 扩展为 resource/native 双模式与四档密度。 完整说明。

API 阅读方式 ​

下方 Props、Events、Slots、Exposes 按当前实际公开类型与运行默认值生成。组合属性按分支生效,不能任意混搭值模式。标为“未知 / 未声明”的默认值不代表 false 或空值。源码区域提供对应语言的独立 Demo.vue,可直接复制或下载;本地辅助组件、数据和素材已内联到当前文件。

API

属性 AsamUploadProps

属性名说明类型默认值
disabled是否禁用上传(AsamUploadProps)["disabled"] | boolean | undefinedundefined
data上传时附带的额外参数从 v2.3.13 支持 Awaitable 数据,和 Function(AsamUploadProps)["data"] | Readonly<Record<string, string | Blob>> | undefined工厂函数(每个实例创建)
name上传的文件字段名string | undefined"file"
onChange文件状态改变时的钩子,添加文件、上传成功和上传失败时都会被调用PublicMember<AsamUploadProps, "onChange">函数默认值(作为值传递)
onError文件上传失败时的钩子PublicMember<AsamUploadProps, "onError">函数默认值(作为值传递)
crossorigin原生属性 crossoriginenum"" | "anonymous" | "use-credentials"完整类型:PublicMember<AsamUploadProps, "crossorigin">—
onProgress文件上传时的钩子PublicMember<AsamUploadProps, "onProgress">函数默认值(作为值传递)
multiple是否支持多选文件boolean | undefined | false | undefined | truefalse
beforeUpload上传文件之前的钩子,参数为上传的文件,若返回false或者返回 Promise 且被 reject,则停止上传。PublicMember<AsamUploadProps, "beforeUpload">函数默认值(作为值传递)
beforeRemove删除文件之前的钩子,参数为上传的文件和文件列表,若返回 false 或者返回 Promise 且被 reject,则停止删除。PublicMember<AsamUploadProps, "beforeRemove">—
onRemove文件列表移除文件时的钩子PublicMember<AsamUploadProps, "onRemove">函数默认值(作为值传递)
onPreview点击文件列表中已上传的文件时的钩子PublicMember<AsamUploadProps, "onPreview">函数默认值(作为值传递)
onSuccess文件上传成功时的钩子PublicMember<AsamUploadProps, "onSuccess">函数默认值(作为值传递)
onExceed当超出限制时,执行的钩子函数PublicMember<AsamUploadProps, "onExceed">函数默认值(作为值传递)
action请求 URLstring | undefined"#"
headers设置上传的请求头部PublicMember<AsamUploadProps, "headers">—
method设置上传请求方法string | undefined"post"
drag是否启用拖拽上传boolean | undefinedfalse
withCredentials支持发送 cookie 凭证信息boolean | undefinedfalse
showFileList是否显示已上传文件列表PublicMember<AsamUploadProps, "showFileList">true
accept接受上传的文件类型(thumbnail-mode 模式下此参数无效)string | undefined""
fileList默认上传文件PublicMember<AsamUploadProps, "fileList">工厂函数(每个实例创建)
autoUpload是否自动上传文件(AsamUploadProps)["autoUpload"] | boolean | undefinedtrue
listType文件列表的类型enum"text" | "picture" | "picture-card"完整类型:PublicMember<AsamUploadProps, "listType">"text"
httpRequest覆盖默认的 Xhr 行为,允许自行实现上传文件的请求PublicMember<AsamUploadProps, "httpRequest">函数默认值(作为值传递)
limit允许上传文件的最大数量number | undefined—
directory是否支持上传文件夹。启用后,只能选择文件夹;选择文件夹后,文件夹内的文件将被扁平化处理。boolean | undefinedfalse
size—enum"large" | "big" | "default" | "small"完整类型:AsamControlSize | undefinedundefined
mode—enum"native" | "resource"完整类型:"native" | "resource" | undefined'resource'
upload—undefined | AsamUploadHandlerundefined
request—undefined | AsamUploadRequestConfigundefined
modelValue—undefined | AsamUploadedResource | null | readonly AsamUploadedResource[]null
fieldName—undefined | string | undefined'file'
maxSizeBytes—undefined | number | undefinedundefined
validate—undefined | ((file: AsamUploadInput["file"]) => boolean | string) | undefinedundefined

事件 AsamUploadEmits

属性名说明类型默认值
update:modelValue—[value: AsamUploadValue]—
update:fileList—(AsamUploadEmits)["update:fileList"]—
change—[value: AsamUploadValue]—
progress—[item: AsamUploadItem]—
success—[resource: AsamUploadedResource, item: AsamUploadItem]—
error—[error: AsamDataError, item: AsamUploadItem]—
cancelled—[item: AsamUploadItem]—
remove—[resource: AsamUploadedResource]—

插槽 AsamUploadSlots

属性名说明类型默认值
default—(() => unknown) | undefined—
trigger—(() => unknown) | undefined—
tip—(() => unknown) | undefined—
file—(AsamUploadSlots)["file"]—

插槽 AsamNativeUploadSlots

属性名说明类型默认值
file—(AsamNativeUploadSlots)["file"]—
trigger—(AsamNativeUploadSlots)["trigger"]—
default—(AsamNativeUploadSlots)["default"]—
tip—(AsamNativeUploadSlots)["tip"]—

实例方法与状态 AsamUploadExpose

属性名说明类型默认值
submit—(() => void) & (() => void)—
abort取消上传请求。(AsamUploadExpose)["abort"]—
clearFiles—(AsamUploadExpose)["clearFiles"]—
handleStart—(AsamUploadExpose)["handleStart"]—
handleRemove—(AsamUploadExpose)["handleRemove"]—
cancel—(clientId?: string) => void—
clear—() => void—

用法与契约补充说明 ​

原生照片墙、缩略图与受控重排 ​

native 模式完整承接 text、picture、picture-card 三种 listType。onPreview 处理预览动作;beforeUpload 可同步/异步拒绝文件或返回替换后的 File/Blob,返回 false/Promise rejection 会阻止上传。beforeRemove 可同步/异步拒绝移除,onRemove 在实际移除后调用;onChange 会在选择、成功、失败时收到当前列表。native file 插槽原样接收原生 { file, index },移除和取消通过实例 handleRemove(file) / abort(file) 调用。item/remove/cancel 仅属于 resource file 插槽;旧 native 用法需按照片墙示例迁移。

原生照片墙、缩略图与受控重排 ​

v-model:fileList 为受控原始列表,使用方可重排或外部替换;uid 保持文件身份。picture 和 picture-card 的缩略图使用 file.url;组件负责自身生成的对象 URL 生命周期。crossorigin 按实际图片来源配置。disabled 禁止选择和原生列表操作;资源模式也禁止默认取消、移除按钮,实例方法仍由使用方控制。

隐藏列表后的头像替换 ​

下面使用 native、showFileList=false 和 default 插槽呈现选择入口,成功后以头像替换入口内容。beforeUpload 拒绝非 JPG 或超过 2 MiB 的文件;accept 是选择器提示,不能替代验证。httpRequest 是本地 Promise,onSuccess 只在成功后用原始 File 创建预览,不发网络请求。拒绝文件不会替换已有头像。

目录选择和拖放路径 ​

目录上传由 native 的 directory 承接。目录选择依赖浏览器 webkitdirectory 支持;拖放目录展开后保留原始文件的 webkitRelativePath,而不是只留下最后一级文件名。multiple 接收展开的文件集合,httpRequest 的 options.file 同样保留路径,存储端可以据此构造相对目录。

目录选择和拖放路径 ​

resource 模式保持规范化资源模型,其 transport 输入是原始 File;不会擅自将目录层次塞入资源 id/url。目录选择 UI 和照片墙由 native 明确承接;resource 的 file 插槽可呈现宿主已有资源缩略图。需要资源路径时由 upload/request transform 按宿主协议生成,不能将 native fileList 与 resource modelValue 混搭。

数量限制、覆盖和请求钩子 ​

limit 与 onExceed 组合控制超量选择。覆盖单文件时先 clearFiles,再给新 File 赋 uid 并 handleStart;handleRemove 走原始移除流程。autoUpload=false 将文件留在 ready,submit 发送待传列表。showFileList、accept、drag、multiple、disabled 直接控制原生 UI。trigger 是选择入口,存在 trigger 时 default 可放独立提交动作,tip 为提示区域。

数量限制、覆盖和请求钩子 ​

原生请求参数 action/method/headers/name/data/withCredentials 交给 httpRequest;data 支持对象、函数和 Promise。onProgress 接收进度事件,onSuccess/onError 接收结果和原始列表。自定义 httpRequest 可返回 Promise(由组件调用成功/失败钩子)或 XMLHttpRequest(abort 可中止其请求);Promise 的物理取消由自定义请求实现负责,不能仅凭调用 abort 宣称异步操作已终止。clearFiles 可按 ready/uploading/success/fail 过滤,禁止在 beforeUpload 中清列表。

资源 transport、转换、取消与回填 ​

upload handler 和 request 二选一。request 包含 url、post/put、params、同步 transform,实际上传由注入的 provider.upload 执行;示例以独立 runtime/provide 隔离,不改变其他示例。transport 输入保留 File、fieldName 和字符串/Blob data;context.signal 与 reportProgress 分别支持取消和进度。loaded/total 必须有效,未知 total 显示无百分比状态;超量进度不当成成功。

资源 transport、转换、取消与回填 ​

transform 返回合法 id/name/url/mimeType/size 资源,失败、重复 id 和错误 metadata 不写入模型。maxSizeBytes/validate/limit 在传输前判定;配置错误、transport 错误和 transform 错误分别通过 error.kind 表明来源。未完成或失败文件不进入 modelValue。多文件模型必须数组,单文件空值为 null;外部回填重新显示已有资源,资源模型与 native 原始文件列表保持分离。

资源 transport、转换、取消与回填 ​

cancel/clear/作用域失效及卸载中止 context,迟到完成不会写回;进度、成功、错误、cancelled、remove 事件保持各自 payload。disabled 禁止默认资源选择、取消和移除操作;自定义 file 插槽的按钮和外部实例方法由使用方控制。实例 abort/clearFiles/handleStart/handleRemove 为原生文件桥接,submit/cancel/clear 为资源操作;全部操作的结果以真实模型与列表为准。

ASAM 扩展与迁移 ​

ASAM 扩展为 resource/native 双模式与四档密度。resource 的 upload 与 request 二选一;request 需要 provider 上传 transport 与 transform,不混用 native action。resource 公开 submit/cancel/clear;native 公开 abort、submit、clearFiles、handleStart、handleRemove。单个资源空值为 null,多资源为空数组。

参数与事件补充说明

组合契约按分支生效;请同时查看公开类型。

参数与事件说明

disabled

必填:否;声明来源:上游声明。

disabled 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:false / true

枚举:false / true

默认值与来源
undefined(已安装运行时;已安装组件)

来源分支 1

固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:undefined(2.14.7;源码事实,未作为 ASAM 运行实测)

data

必填:否;声明来源:上游声明。

data 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(rawFile: Parameters<Extract<NonNullable<(AsamUploadProps)["data"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(AsamUploadProps)["data"]>, (...args: never[]) => unknown>>

  • data.then: PublicMember<NonNullable<(AsamUploadProps)["data"]>, "then"> — 依赖声明

    添加 Promise 兑现或拒绝时执行的回调。

    事件参数完整签名见公开类型视图。

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • data.catch: PublicMember<NonNullable<(AsamUploadProps)["data"]>, "catch"> — 依赖声明

    添加仅在 Promise 拒绝时执行的回调。

    事件参数:<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined): ReturnType<Extract<NonNullable<PublicMember<NonNullable<(AsamUploadProps)["data"]>, "catch">>, (...args: never[]) => unknown>>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • data.finally: PublicMember<NonNullable<(AsamUploadProps)["data"]>, "finally"> — 依赖声明

    添加 Promise 完成或拒绝时执行的回调;该回调不能修改兑现值。

    事件参数:(onfinally?: (() => void) | null | undefined): ReturnType<Extract<NonNullable<PublicMember<NonNullable<(AsamUploadProps)["data"]>, "finally">>, (...args: never[]) => unknown>>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • data.__@toStringTag@9091: string — 依赖声明
默认值与来源
工厂函数(每个实例创建)(实例工厂;已安装组件)

来源分支 1

固定上游文档默认:{}(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码工厂(未执行):() => mutable({} as const)(2.14.7;源码事实,未作为 ASAM 运行实测)

name

必填:按分支;声明来源:上游声明。

默认值与来源
"file"(已安装运行时;已安装组件)

固定上游文档默认:file(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:'file'(2.14.7;源码事实,未作为 ASAM 运行实测)

onChange

必填:按分支;声明来源:上游声明。

onChange 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onChange">>, (...args: never[]) => unknown>>[0], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onChange">>, (...args: never[]) => unknown>>[1]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

onError

必填:按分支;声明来源:上游声明。

onError 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(error: Error, uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onError">>, (...args: never[]) => unknown>>[1], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onError">>, (...args: never[]) => unknown>>[2]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

crossorigin

必填:按分支;声明来源:上游声明。

crossorigin 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

枚举:"" / "anonymous" / "use-credentials"

默认值与来源
未知 / 未声明

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)

onProgress

必填:按分支;声明来源:上游声明。

onProgress 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(evt: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onProgress">>, (...args: never[]) => unknown>>[0], uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onProgress">>, (...args: never[]) => unknown>>[1], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onProgress">>, (...args: never[]) => unknown>>[2]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

multiple

必填:否;声明来源:上游声明。

multiple 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:false / true

枚举:false

枚举:true

默认值与来源
false(隐式 Boolean 默认;已安装组件)

来源分支 1

固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

beforeUpload

必填:按分支;声明来源:上游声明。

beforeUpload 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(rawFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "beforeUpload">>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<PublicMember<AsamUploadProps, "beforeUpload">>, (...args: never[]) => unknown>>

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

beforeRemove

必填:按分支;声明来源:上游声明。

beforeRemove 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "beforeRemove">>, (...args: never[]) => unknown>>[0], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "beforeRemove">>, (...args: never[]) => unknown>>[1]): ReturnType<Extract<NonNullable<PublicMember<AsamUploadProps, "beforeRemove">>, (...args: never[]) => unknown>>

默认值与来源
未知 / 未声明

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)

onRemove

必填:按分支;声明来源:上游声明。

onRemove 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onRemove">>, (...args: never[]) => unknown>>[0], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onRemove">>, (...args: never[]) => unknown>>[1]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

onPreview

必填:按分支;声明来源:上游声明。

onPreview 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onPreview">>, (...args: never[]) => unknown>>[0]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

onSuccess

必填:按分支;声明来源:上游声明。

onSuccess 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(response: any, uploadFile: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onSuccess">>, (...args: never[]) => unknown>>[1], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onSuccess">>, (...args: never[]) => unknown>>[2]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

onExceed

必填:按分支;声明来源:上游声明。

onExceed 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(files: AsamUploadInput["file"][], uploadFiles: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "onExceed">>, (...args: never[]) => unknown>>[1]): void

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:NOOP(2.14.7;源码事实,未作为 ASAM 运行实测)

action

必填:按分支;声明来源:上游声明。

默认值与来源
"#"(已安装运行时;已安装组件)

固定上游文档默认:#(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:'#'(2.14.7;源码事实,未作为 ASAM 运行实测)

headers

必填:按分支;声明来源:上游声明。

headers 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

  • headers.append: (name: string, value: string) => void — 依赖声明

    Headers.append():向现有请求头追加值;不存在时创建该请求头。

    事件参数:(name: string, value: string): void

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.delete: (name: string) => void — 依赖声明

    Headers.delete():删除指定请求头。

    事件参数:(name: string): void

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.get: (name: string) => string | null — 依赖声明

    Headers.get():返回指定请求头全部值的字符串;不存在时返回 null。

    事件参数:(name: string): string | null

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.getSetCookie: () => string[] — 依赖声明

    Headers.getSetCookie():返回响应中全部 Set-Cookie 请求头值的数组。

    事件参数:(): string[]

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.has: (name: string) => boolean — 依赖声明

    Headers.has():返回布尔值,表示是否存在指定请求头。

    事件参数:(name: string): boolean

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.set: (name: string, value: string) => void — 依赖声明

    Headers.set():设置指定请求头的值;不存在时创建该请求头。

    事件参数:(name: string, value: string): void

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.forEach: (callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any) => void — 依赖声明

    事件参数:(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.entries: () => HeadersIterator<[string, string]> — 依赖声明

    返回遍历此对象全部键值对的迭代器。

    事件参数:(): HeadersIterator<[string, string]>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.keys: () => HeadersIterator<string> — 依赖声明

    返回遍历此对象全部键的迭代器。

    事件参数:(): HeadersIterator<string>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.values: () => HeadersIterator<string> — 依赖声明

    返回遍历此对象全部值的迭代器。

    事件参数:(): HeadersIterator<string>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

  • headers.__@iterator@8659: () => HeadersIterator<[string, string]> — 依赖声明

    事件参数:(): HeadersIterator<[string, string]>

    嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

默认值与来源
未知 / 未声明

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)

method

必填:按分支;声明来源:上游声明。

默认值与来源
"post"(已安装运行时;已安装组件)

固定上游文档默认:post(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:'post'(2.14.7;源码事实,未作为 ASAM 运行实测)

drag

必填:否;声明来源:上游声明。

drag 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:false / true

枚举:false / true

默认值与来源
false(隐式 Boolean 默认;已安装组件)

来源分支 1

固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

withCredentials

必填:按分支;声明来源:上游声明。

withCredentials 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

枚举:false / true

默认值与来源
false(隐式 Boolean 默认;已安装组件)

固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

showFileList

必填:按分支;声明来源:上游声明。

showFileList 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

枚举:false / true

默认值与来源
true(已安装运行时;已安装组件)

固定上游文档默认:true(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:true(2.14.7;源码事实,未作为 ASAM 运行实测)

accept

必填:否;声明来源:上游声明。

默认值与来源
""(已安装运行时;已安装组件)

来源分支 1

固定上游文档默认:''(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)

fileList

必填:按分支;声明来源:上游声明。

默认值与来源
工厂函数(每个实例创建)(实例工厂;已安装组件)

固定上游文档默认:[](2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码工厂(未执行):() => mutable([] as const)(2.14.7;源码事实,未作为 ASAM 运行实测)

autoUpload

必填:否;声明来源:上游声明。

autoUpload 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:false / true

枚举:false / true

默认值与来源
true(已安装运行时;已安装组件)

来源分支 1

固定上游文档默认:true(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:true(2.14.7;源码事实,未作为 ASAM 运行实测)

listType

必填:按分支;声明来源:上游声明。

listType 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

枚举:"text" / "picture" / "picture-card"

默认值与来源
"text"(已安装运行时;已安装组件)

固定上游文档默认:text(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:'text'(2.14.7;源码事实,未作为 ASAM 运行实测)

httpRequest

必填:按分支;声明来源:上游声明。

httpRequest 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

事件参数:(options: Parameters<Extract<NonNullable<PublicMember<AsamUploadProps, "httpRequest">>, (...args: never[]) => unknown>>[0]): XMLHttpRequest | Promise<unknown>

默认值与来源
函数默认值(作为值传递)(函数值(不执行);已安装组件)

固定上游文档默认:原始表达式见机器资料(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

固定上游源码默认表达式:ajaxUpload(2.14.7;源码事实,未作为 ASAM 运行实测)

limit

必填:否;声明来源:上游声明。

默认值与来源
未知 / 未声明

来源分支 1

固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

directory

必填:按分支;声明来源:上游声明。

directory 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

契约分支 1

枚举:false / true

默认值与来源
false(隐式 Boolean 默认;已安装组件)

固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)

size

必填:否;声明来源:ASAM 声明。

size 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:"large" / "big" / "default" / "small"

默认值与来源
undefined(源码表达式;ASAM 声明)
mode

必填:否;声明来源:ASAM 声明。

mode 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

枚举:"native"

枚举:"resource"

默认值与来源
'resource'(源码表达式;ASAM 声明)
upload

必填:否;声明来源:ASAM 声明。

upload 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(input: AsamUploadInput, context: AsamUploadContext): Promise<AsamUploadedResource>

默认值与来源
undefined(源码表达式;ASAM 声明)
request

必填:否;声明来源:ASAM 声明。

request 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

  • request.url: string — 数据 / provider 协议
  • request.method: "post" | "put" | undefined — 数据 / provider 协议

    枚举:"post" / "put"

  • request.params: Readonly<Record<string, unknown>> | undefined — 数据 / provider 协议
  • request.transform: (response: unknown, input: AsamUploadInput) => AsamUploadedResource — 数据 / provider 协议

    事件参数:(response: unknown, input: AsamUploadInput): AsamUploadedResource

默认值与来源
undefined(源码表达式;ASAM 声明)
modelValue

必填:否;声明来源:ASAM 声明。

modelValue 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

  • modelValue.id: string — 数据 / provider 协议
  • modelValue.name: string — 数据 / provider 协议
  • modelValue.url: string — 数据 / provider 协议
  • modelValue.mimeType: string — 数据 / provider 协议
  • modelValue.size: number — 数据 / provider 协议

嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。

默认值与来源
null(源码表达式;ASAM 声明)
fieldName

必填:否;声明来源:ASAM 声明。

默认值与来源
'file'(源码表达式;ASAM 声明)
maxSizeBytes

必填:否;声明来源:ASAM 声明。

默认值与来源
undefined(源码表达式;ASAM 声明)
validate

必填:否;声明来源:ASAM 声明。

validate 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(file: AsamUploadInput["file"]): string | boolean

默认值与来源
undefined(源码表达式;ASAM 声明)
AsamUploadProps 公开类型视图
ts
import type { AsamUploadProps, AsamUploadInput, AsamUploadProgress, AsamControlSize, AsamUploadHandler, AsamUploadContext, AsamUploadedResource, AsamUploadRequestConfig } from '@asam-ui/ui';

type PublicMember<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? T[K] : never : never;

// AsamUploadProps
type PublicContract = AsamUploadProps;

参数与事件说明

update:modelValue

必填:是;声明来源:ASAM 声明。

update:fileList

必填:是;声明来源:ASAM 声明。

change

必填:是;声明来源:ASAM 声明。

progress

必填:是;声明来源:ASAM 声明。

success

必填:是;声明来源:ASAM 声明。

error

必填:是;声明来源:ASAM 声明。

cancelled

必填:是;声明来源:ASAM 声明。

remove

必填:是;声明来源:ASAM 声明。

AsamUploadEmits 公开类型视图
ts
import type { AsamUploadEmits, AsamUploadValue, AsamUploadItem, AsamUploadedResource, AsamDataError } from '@asam-ui/ui';

// AsamUploadEmits
type PublicContract = {
	"update:modelValue": [value: AsamUploadValue];
	"update:fileList": (AsamUploadEmits)["update:fileList"];
	"change": [value: AsamUploadValue];
	"progress": [item: AsamUploadItem];
	"success": [resource: AsamUploadedResource, item: AsamUploadItem];
	"error": [error: AsamDataError, item: AsamUploadItem];
	"cancelled": [item: AsamUploadItem];
	"remove": [resource: AsamUploadedResource];
};

资源模式插槽;基础模式使用不包含资源操作的 AsamNativeUploadSlots。

参数与事件说明

default

必填:否;声明来源:ASAM 声明。

default 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(): unknown

trigger

必填:否;声明来源:ASAM 声明。

trigger 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(): unknown

tip

必填:否;声明来源:ASAM 声明。

tip 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(): unknown

file

必填:否;声明来源:ASAM 声明。

file 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(scope: Parameters<Extract<NonNullable<(AsamUploadSlots)["file"]>, (...args: never[]) => unknown>>[0]): unknown

AsamUploadSlots 公开类型视图
ts
import type { AsamUploadSlots, AsamUploadItem } from '@asam-ui/ui';

// AsamUploadSlots
type PublicContract = {
	"default"?: (() => unknown) | undefined;
	"trigger"?: (() => unknown) | undefined;
	"tip"?: (() => unknown) | undefined;
	"file"?: (AsamUploadSlots)["file"];
};

基础文件插槽沿用依赖的插槽;资源操作属于资源模式。

参数与事件说明

file

必填:否;声明来源:上游声明。

file 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(props: Parameters<Extract<NonNullable<(AsamNativeUploadSlots)["file"]>, (...args: never[]) => unknown>>[0]): any

trigger

必填:否;声明来源:上游声明。

trigger 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(props: AsamTableColumnExpose): any

default

必填:否;声明来源:上游声明。

default 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(props: AsamTableColumnExpose): any

tip

必填:否;声明来源:上游声明。

tip 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(props: AsamTableColumnExpose): any

AsamNativeUploadSlots 公开类型视图
ts
import type { AsamNativeUploadSlots, AsamTableColumnExpose } from '@asam-ui/ui';

// AsamNativeUploadSlots
type PublicContract = {
	"file"?: (AsamNativeUploadSlots)["file"];
	"trigger"?: (AsamNativeUploadSlots)["trigger"];
	"default"?: (AsamNativeUploadSlots)["default"];
	"tip"?: (AsamNativeUploadSlots)["tip"];
	readonly [key: string]: import("vue").Slot<any> | undefined;
};

参数与事件说明

submit

必填:是;声明来源:ASAM 声明。

submit 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(): void

abort

必填:是;声明来源:上游声明。

abort 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(file?: Parameters<Extract<NonNullable<(AsamUploadExpose)["abort"]>, (...args: never[]) => unknown>>[0]): void

clearFiles

必填:是;声明来源:上游声明。

clearFiles 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(states?: Parameters<Extract<NonNullable<(AsamUploadExpose)["clearFiles"]>, (...args: never[]) => unknown>>[0]): void

handleStart

必填:是;声明来源:上游声明。

handleStart 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(rawFile: Parameters<Extract<NonNullable<(AsamUploadExpose)["handleStart"]>, (...args: never[]) => unknown>>[0]): void

handleRemove

必填:是;声明来源:上游声明。

handleRemove 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(file: Parameters<Extract<NonNullable<(AsamUploadExpose)["handleRemove"]>, (...args: never[]) => unknown>>[0]): void

cancel

必填:是;声明来源:ASAM 声明。

cancel 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(clientId?: string | undefined): void

clear

必填:是;声明来源:ASAM 声明。

clear 参数与事件数据

下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。

事件参数:(): void

AsamUploadExpose 公开类型视图
ts
import type { AsamUploadExpose, AsamUploadProps } from '@asam-ui/ui';

// AsamUploadExpose
type PublicContract = {
	"submit": (() => void) & (() => void);
	"abort": (AsamUploadExpose)["abort"];
	"clearFiles": (AsamUploadExpose)["clearFiles"];
	"handleStart": (AsamUploadExpose)["handleStart"];
	"handleRemove": (AsamUploadExpose)["handleRemove"];
	"cancel": (clientId?: string) => void;
	"clear": () => void;
};

搜索文档

Tab 选择结果 Enter 打开 Esc 关闭