UWF下拉联动开发
UWF4.1框架实施下拉联动功能,主要分两种情况(标准表单和原生表单):
1. 标准表单
即:UWF流程表单或UWF步骤表单
下面我们就直接开始配置下拉联动
1.配置数据源或资源管理
2.表单设计器中放入需联动的控件,例如:省市县
3.设置省数据源api配置
资源管理url:
/form/GetResourceByType
获取数据源url:
/form/GetDataSource
4.设置市联动数据源api配置
动态字段需使用{}
大括号括起来
这样标准表单所有配置就配置完成了,下拉联动可以进行预览表单查看效果
1.原生表单
原生表单,即使用流程或步骤(自定义)表单,设计完发布出来的表单
1.配置数据源或资源管理
2.绑定联动事件与变量
联动控件默认会绑定一个变量,可按情况修改
2.初始化变量
在load方法中对变量进行初始化,否则由于页面加载时,没有Sourceqyajv84f数组变量,el-select第一次联动,数据源会不更新
/**
* 页面加载
*/
mounted() {
let self = this as any;
super.load(this).then(function () {
self.$set(self.pageData.DATASOURCE, "Sourceqyajv84f", []);
});
}
3.加载资源管理数据源
provinceChange() {
var self = this;
var type = "GetResource";
let filterFieldArr: any = [];
var province = this.pageData.FORMDATA.Province;
// 设置参数
filterFieldArr = [{ "type": "City" }, { "{remark}": province }];
// 加载市数据
WebUtil.getDataSource(type, filterFieldArr, "", "", "").then(function (res) {
// 绑定变量
self.pageData.DATASOURCE.Sourceqyajv84f = res;
});
}
4.加载数据源数据
provinceChange() {
var self = this;
var type = "getlist";
let filterFieldArr: any = [];
var province = this.pageData.FORMDATA.Province;
// 数据源id
let dataSource = "6ab0a41e-eee1-481e-a24e-fdff998ddc65";
// 流程名
let processName = this.pageData.PROCESSNAME;
// 流程设计器版本号
let version = this.pageData.VERSION;
// 设置参数
let filterFieldArr: any = [{ "type.CONTAIN": "City" },{ "remark.CONTAIN": province }];
//NOTCONTAIN 不等于
//CONTAIN 等于
//OR 或者
// 加载市数据
WebUtil.getDataSource(type, filterFieldArr, dataSource, processName,
version).then(function (res) {
self.pageData.DATASOURCE.Sourceqyajv84f = res;
});
}
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现