开源项目低代码表单设计器FcDesigner扩展右侧组件的配置规则

ops/2024/11/18 0:34:12/

开源项目低代码表单设计器 FcDesigner 中,您可以通过定制化的配置规则来扩展组件的功能,从而满足特定的业务需求。这些配置规则如 baseRuleformRulecomponentRuleappendConfigData 提供了一种灵活的方法来控制组件、表单的行为和外观。以下是对这些参数的详细解释和一些示例应用,以帮助您更好地理解和使用这些功能。

源码地址: Github | Gitee | 文档

在这里插入图片描述

数据结构

每个配置规则可以定义为一个函数或一个对象,它们返回一个或一组规则。这些规则可以在生成时进行追加、覆盖或前置处理。

type extendRule = ((arg: { t: t }) => Rule[]) | {rule: (arg: { t: t }) => Rule[];append?: boolean; // 决定是否将规则追加到现有规则后prepend?: boolean; // 决定是否将规则添加到现有规则的前面
};type Config = {baseRule?: extendRule;formRule?: extendRule;componentRule?: {default: (rule: Rule, arg: { t: t }) => Rule[] | {rule: (rule: Rule, arg: { t: t }) => Rule[];append?: boolean;prepend?: boolean;};[id: string]: (rule: Rule, arg: { t: t }) => Rule[] | {rule: (rule: Rule, arg: { t: t }) => Rule[];append?: boolean;prepend?: boolean;};};
}

扩展表单配置

增加一个备注输入框在表单配置的顶部,用于在创建表单时留出额外的信息输入空间。

<template><fc-designer ref="designer" :config="config"/>
</template><script setup>
const config = {appendConfigData: ['mark'],formRule: {prepend: true,rule() {return [{ type: 'input', field: 'mark', title: '表单备注' }];}}
}
</script>

扩展表单组件配置

在表单组件配置的末尾增加一个字段映射输入框,方便进行字段与数据表的映射。

<template><fc-designer ref="designer" :config="config"/>
</template><script setup>
const config = {appendConfigData(rule) {return {formCreateDb_field: rule.db_field // 将db_field映射至formCreateDb_field};},formRule: {prepend: true,rule() {return [{ type: 'input', field: 'mark', title: '表单备注' }];}}
}
</script>

扩展指定组件配置

为输入框组件增加一个开关,该开关用于设置字段是否必填,并位于配置项的顶部。

<template><fc-designer ref="designer" :config="config"/>
</template><script setup>
const config = {appendConfigData: ['mark'],componentRule: {default: {prepend: true,rule() {return [{ type: 'input', field: 'mark', title: '备注' }];}},input: {prepend: true,rule() {return [{ type: 'switch', field: '$required', title: '是否必填' }];}}}
}
</script>

通过这些配置,您可以便捷地自定义和扩展表单设计器中的功能,以更好地适应各种特殊的业务需求。希望这些示例能够帮助您更好地上手使用 formCreateDesigner。


http://www.ppmy.cn/ops/134577.html

相关文章

【计网不挂科】计算机网络第五章< 传输层 >习题库(含答案)

前言 大家好吖&#xff0c;欢迎来到 YY 滴计算机网络 系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C的老铁 本博客主要内容&#xff0c;收纳了一部门基本的计算机网络题目&#xff0c;供yy应对期中考试复习。大家可以参考 本章为分章节的习题内容题库&#x…

对接阿里云实人认证

对接阿里云实人认证-身份二要素核验接口整理 目录 应用场景 接口文档 接口信息 请求参数 响应参数 调试 阿里云openApi平台调试 查看调用结果 查看SDK示例 下载SDK 遇到问题 本地调试 总结 应用场景 项目有一个提现的场景&#xff0c;需要用户真实的身份信息。 …

html + css 自适应首页布局案例

文章目录 前言一、组成二、代码1. css 样式2. body 内容3.全部整体 三、效果 前言 一个自适应的html布局 一、组成 整体居中&#xff0c;宽度1200px&#xff0c;小屏幕宽度100% 二、代码 1. css 样式 代码如下&#xff08;示例&#xff09;&#xff1a; <style>* {…

Spring——单元测试

单元测试&#xff1a;JUnit 在之前的测试方法中&#xff0c;几乎都能看到以下的两行代码&#xff1a; ApplicationContext context new ClassPathXmlApplicationContext("xxx.xml"); Xxxx xxx context.getBean(Xxxx.class); 这两行代码的作用是创建Spring容器&a…

Docker 部署Nacos 单机部署 MYSQL数据持久化

配置MYSQL 数据库名为&#xff1a;nacos /******************************************/ /* 表名称 config_info */ /******************************************/ CREATE TABLE config_info (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT id,data_i…

python习题练习

python习题 编写一个简单的工资管理程序系统可以管理以下四类人:工人(worker)、销售员(salesman)、经理(manager)、销售经理(salemanger)所有的员工都具有员工号&#xff0c;工资等属性&#xff0c;有设置姓名&#xff0c;获取姓名&#xff0c;获取员工号&#xff0c;计算工资等…

Spring Boot编程训练系统:性能优化实践

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了编程训练系统的开发全过程。通过分析编程训练系统管理的不足&#xff0c;创建了一个计算机管理编程训练系统的方案。文章介绍了编程训练系统的系统分析部分&…

软件测试项目实战

软件测试是使用人工或者自动的手段来运行或者测定某个软件系统的过程&#xff0c;其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 在软件投入使用前&#xff0c;要经过一系列的严格测试&#xff0c;才能保证交付质量。 一、引言 1.编写目的 本文档…