# 1.动态限制上传附件的格式
# 1.场景介绍
在资料的表单中,上传的附件受字段文件格式的动态限制,非文件格式的附件无法上传。
本文以上述场景,讲解如何动态限制上传附件的格式。
# 2.效果展示
# 3.实现思路
1.创建变量v_type存储字段文件格式限制的值。
2.附件上传组件转换代码模式,在编码模式中把accept属性与v_type绑定,即:accept="v_type"。
3.删除属性:isInChildren="true"。
# 4.操作步骤
# 1.创建资料表单
初始化数据库,以MySQL为例,脚本如下:
create table upload_information (
id varchar(255) not null,
name varchar(255) comment '资料名称',
space varchar(255) comment '文件格式限制',
viewAndDownload varchar(255) comment '资料查看或下载',
fileSize varchar(255) comment '文件大小',
primary key (id)
);
创建实体,生成表单并修改资料查看或下载组件为附件上传。
# 2.自动生成文件大小字段值
附件上传成功后,把附件的大小换算成kb赋值给文件大小字段组件,在附件组件-高级-添加事件-上传成功事件中书写代码。
//__viewAndDownloadObject为上传成功的附件对象。
this.formData.fileSize = Math.round(this.formData.__viewAndDownloadObject.fileSize / 1024) + "k";
# 3.动态限制上传格式
创建变量v_type,用于存储文件格式输入的字符串。
点击文件格式组件,高级-添加事件-值变化时,把输入的值存储到v_type中。
点击附件上传组件-高级-转换成代码模式,点击编码模式,在pc_template中的viewAndDownload(可编辑区域),找到属性accept和,修改为:accept="v_type"。
若上传附件样式发生变化,需要删除:isInChildren="true"属性。