简体中文
file_attachment
约 448 字大约 1 分钟
2025-09-22
附件字段在 field.edit.before 阶段触发,发生于添加和删除文件之前。
参数
| 参数 | 说明 | 类型 |
|---|---|---|
| fieldName | 触发事件的字段api_name | String |
| objApiName | 触发事件的对象api_name | String |
| dataIndex | 触发事件数据的dataIndex(适用于从对象数据) | String |
| type | add,表示是添加文件动作 | String |
| selectFileParams | 即将用于唤起选附件控件的入参,在插件内可以修改该参数 | Object |
添加(上传文件前)
| 参数 | 说明 | 类型 |
|---|---|---|
| type | add,表示是添加文件动作 | String |
| selectFileParams | 即将用于唤起选附件控件的入参,在插件内可以修改该参数 | Object |
删除
| 参数 | 说明 | 类型 |
|---|---|---|
| type | del,表示是删除文件动作 | String |
| fileInfos | 即将被删除的附件 | Array |
返回结果
| 参数 | 说明 | 类型 |
|---|---|---|
| consumed | true不再继续执行后续逻辑 | Boolean |
| selectObjectParams | 即将用于唤起选对象控件的入参,在钩子内可以修改该参数 | Object |
| selectObject | 选对象方法(异步),插件处理选对象逻辑,返回选择的数据,支持多选async p=>{return {objectDataList:[{_id:'',name:'',...}]} | Function |
fileInfo属性
| 属性 | 说明 | 类型 |
|---|---|---|
| filename | 文件名 | String |
| ext | 文件后缀 | Object |
| size | 文件字节大小 | Number |
| path | 上传成功的图片有path | String |
| fileId | 网盘文件才有(不一定有) | String |
| filePath | 本地文件路径(不一定有) | String |
代码示例
插件实现选择控件,替换掉默认选择控件
{
event: "field.edit.before",
functional: function (pluginExecResult, options) {
let selectFile = async function(params){
let fileInfos=[]
//唤起选择自定义控件,并接收选择的数据
//示例:fileInfos = await selectData(params)
return {fileInfos}//返回选择的数据
}
return {selectFile}
}
}注意
- 不适合在这个事件中调用
dataUpdater更新数据 - 编辑数据时可能无法取到fileId, filePath
