首页 > 其他分享 >免费开源的低代码表单FormCreate安装教程,支持可视化设计,适配移动端

免费开源的低代码表单FormCreate安装教程,支持可视化设计,适配移动端

时间:2024-09-06 11:26:05浏览次数:8  
标签:form 适配 app 表单 组件 FormCreate create

低代码表单FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。它支持 6 个 UI 框架,适配移动端,并且支持生成任何 Vue 组件。内置 20 种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定

源码地址: Github | Gitee

低代码表单FormCreate

特点

多平台与框架支持

  • 支持 Vue2 和 Vue3 版本

FormCreate 兼容不同版本的 Vue 项目,确保无缝集成。

  • 支持 6 个主流 UI 框架
    • Element Plus
    • Ant Design Vue
    • Naive UI
    • Arco Design
    • TDesign
    • Vant UI (适用于移动端)
  • 移动端支持

专为移动端优化,能够生成适配 Vant UI 风格的动态表单。

表单生成与配置

  • 通过 JSON 生成表单

基于 JSON 配置动态生成表单,无需手动编写繁琐的表单代码。

  • 自定义组件
    • 生成任意 Vue 组件,并轻松集成到表单中。
    • 内置数据验证,确保表单输入的正确性。
    • 通过简单配置快速扩展组件功能。
    • 自定义组件轻松转换为表单组件,满足复杂业务需求。
  • 全局配置

支持全局表单配置、组件全局配置和表单事件,统一管理表单行为和样式。

功能扩展与灵活性

  • 自定义配置项扩展

根据业务需求扩展表单功能,快速适应不同场景。

  • 支持组件设置前后缀

为表单字段添加前后缀,提升用户体验。

  • 组件联动

实现表单组件之间的联动和动态更新,轻松应对复杂表单逻辑。

  • 强大的 API

通过 API 快速操作表单,进行数据获取、设置、验证等操作。

  • 双向数据绑定

表单数据与界面双向绑定,确保实时更新 UI 和数据。

  • 事件扩展与注入

自定义表单事件处理逻辑,增强表单的交互能力。

高性能与布局

  • 高性能

内置优化机制,确保表单的快速响应和高效渲染。

  • 数据验证

支持多种复杂验证规则,确保输入数据的合法性。

  • 栅格布局

支持复杂的栅格布局,轻松实现响应式表单设计。

  • 子表单与分组

支持子表单和分组管理,适合处理复杂的数据结构。

内置组件

FormCreate 内置了大量常用的表单组件,满足各种场景需求:

  • hidden:隐藏字段
  • input:文本输入框
  • inputNumber:数字输入框
  • checkbox:复选框
  • radio:单选框
  • switch:开关
  • select:下拉选择框
  • autoComplete:自动完成输入框
  • cascader:级联选择器
  • colorPicker:颜色选择器
  • datePicker:日期选择器
  • timePicker:时间选择器
  • rate:评分组件
  • slider:滑块
  • upload:文件上传
  • tree:树形控件
  • frame:框架组件
  • group (子表单):子表单组件
  • subForm (分组):分组组件

FormCreate 通过丰富的功能和强大的扩展性,能够帮助开发者快速构建复杂的表单系统,无论是企业级应用还是小型项目,都能轻松应对。

低代码表单FormCreate

安装

FormCreate 支持多个主流 UI 框架,您可以根据自己项目的需求选择对应的版本进行安装。

请根据您项目中使用的 UI 框架,安装对应的 FormCreate 版本。

Vant UI 版本 移动端

npm i @form-create/vant^3

Element Plus 版本

npm i @form-create/element-ui@^3

Ant Design Vue 版本

npm i @form-create/ant-design-vue@^3

Naive UI 版本

npm i @form-create/naive-ui@^3

Arco Design 版本

npm i @form-create/arco-design@^3

TDesign 版本

npm i @form-create/tdesign@^3

安装后的初始配置

安装完对应的 FormCreate 版本后,您需要将其引入并配置在 Vue 项目中。以下是通用的配置步骤,具体根据您的项目结构和 UI 框架可能略有不同。

引入和注册 FormCreate

main.jsmain.ts 中引入并注册 FormCreate:

import { createApp } from 'vue';
import App from './App.vue';
import ElementPlus from 'element-plus'; // 根据您选择的 UI 框架调整
import 'element-plus/dist/index.css'; // 样式文件

import formCreate from '@form-create/element-ui'; // 引入 FormCreate

const app = createApp(App);

app.use(ElementPlus); // 挂载 UI 框架
app.use(formCreate); // 挂载 FormCreate

app.mount('#app');

在组件中使用 FormCreate

<template>
  <div id="app">
    <form-create v-model="formData" v-model:api="formApi" :rule="formRules" />
  </div>
</template>

<script setup>
import { ref } from 'vue';

const formData = ref({});
const formApi = ref(null);

const formRules = ref([
  {
    type: 'input',
    field: 'username',
    title: '用户名',
    value: '',
  },
  {
    type: 'input',
    field: 'password',
    props: {
        type:'password'
    },
    title: '密码',
    value: '',
  }
]);
</script>

在上面的示例中,我们定义了一个简单的登录表单,包括用户名、密码输入框。表单数据 (formData) 和 API 实例 (formApi) 都是通过 v-model 进行双向绑定的。

低代码表单FormCreate

安装与引入

使用 CDN 引入

通过 CDN 引入 Vue、Element Plus 和 FormCreate,非常适合快速原型开发和测试。

<!-- 引入 Vue -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script>
<!-- 引入 Element Plus -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/element-plus/dist/index.css">
<script src="https://cdn.jsdelivr.net/npm/element-plus/dist/index.full.min.js"></script>
<!-- 引入 FormCreate -->
<script src="https://cdn.jsdelivr.net/npm/@form-create/element-ui@^3/dist/form-create.min.js"></script>
<!-- 挂载组件 -->
<script>
    const app = Vue.createApp({});
    app.use(ElementPlus);
    app.use(formCreate);
    app.mount('#app');
</script>
使用 Node.js 引入

在 Vue 项目中通过 npm 安装并引入 Element Plus 和 FormCreate。

npm install @form-create/element-ui
npm install element-plus
import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import formCreate from '@form-create/element-ui'

const app = createApp(App)
app.use(ElementPlus)
app.use(formCreate)
app.mount('#app')

生成表单

FormCreate 提供了两种方式生成表单:组件模式和全局方法。

组件模式

使用 <form-create> 标签创建表单,适用于大多数 Vue 项目。

<template>
    <formCreate :rule="rule" :option="options" v-model="formData" v-model:api="fApi"></formCreate>
</template>
<script setup>
    // 导入 form-create
    import formCreate from "@form-create/element-ui";
    import {ref} from "vue";
    // 获取 formCreate 组件, 小于3.2版本时需要手动获取组件
    // const FormCreate = formCreate.$form();
    const fApi = ref({});
    const formData = ref({});
    const options = ref({
        // 表单提交事件
        onSubmit: function (formData) {
            alert(JSON.stringify(formData))
        }
    });
    const rule = ref([
        {
            type:'input',
            field:'goods_name',
            title:'商品名称',
            value:'form-create'
        },
        {
            type:'checkbox',
            field:'label',
            title:'标签',
            value:[0,1,2,3],
            options: [
                {label:'好用',value:0},
                {label:'快速',value:1},
                {label:'高效',value:2},
                {label:'全能',value:3},
            ]
        },
    ]);
</script>

全局方法

使用 formCreate.create(rule, option) 全局方法生成表单。适用于需要在非 Vue 组件中动态生成表单的场景。

<div id="app">
    <div id="goods-form"></div>
</div>
//表单插入的节点
const root = document.getElementById('goods-form')

const fApi = window.formCreate.create(
    //表单生成规则
    [
        {
            type: 'input',
            field: 'goods_name',
            title: '商品名称'
        },
        {
            type: 'datePicker',
            field: 'created_at',
            title: '创建时间'
        }
    ],
    //组件参数配置
    {
        el: root,
        //显示表单重置按钮
        resetBtn: true,
        //表单提交事件
        onSubmit: function (formData) {
            //按钮进入提交状态
            fApi.btn.loading()
        }
    })

标签:form,适配,app,表单,组件,FormCreate,create
From: https://blog.csdn.net/weixin_40487467/article/details/141954963

相关文章

  • SAP B1 三大基本表单标准功能介绍-物料主数据(下)
    背景在SAPB1中,科目表、业务伙伴主数据、物料主数据被称为三大基本表单,其中的标准功能是实施项目的基础。本系列文章将逐一介绍三大基本表单各个字段的含义、须填内容、功能等内容。附上SAPB110.0的帮助文档:SAPBusinessOne10.0|SAPHelpPortal本文介绍的是:库存......
  • 【适配器】设计模式:旧系统迁移与第三方库集成的解决方案
    引言适配器设计模式是一种结构设计模式,它允许将一个类的接口转换成客户端期望的另一个接口。适配器让那些接口不兼容的类可以一起工作。这种模式在系统集成、插件开发和第三方库集成中尤为重要。核心组件:目标接口(ITarget):期望的接口,要转化成的接口定义,客户端将使用这个接......
  • ABB工具坐标系报错质心重量不适配问题
    机器人在运行时为了避免机器人(如传动装置和轴承)出现过载。必须输入正确的负载数据(质量、重心位置、惯性矩),也就是进行负载测试。对于ABB机器人来说,负载测试的方法如下:1、在【主菜单】下,打开【程序编辑器】;   2、选择一个程序,如main程序。点击【调试】;  3、点击......
  • 【推荐100个unity插件之32】对中文支持很好的unity插件,集新手引导、本地化多语言、红
    文章目录前言条件官网下载资源安装设置unityinput选项生成配置文件功能1、新手引导文档效果2、本地化多语言功能文档效果3、红点功能文档效果4、刘海屏适配文档效果6、可视化层级管理工具文档效果7、其他完结前言ThunderFireUXTool由网易雷火UX用户体验中......
  • 油猴脚本自动填写vue页面登录表单,点击登录按钮值被清空了
    直接设置input的value是不行的,因为这个时候没有触发vue里的input事件,vue里绑定变量的值没变为什么?直接修改value应该是会触发@input的才对啊?inputEl.value='xxx'解决方案是:需要手动dispathinputletev=newEvent('input');inputEl.dispatchEvent(ev)示例:(function(......
  • 大屏适配各分辨率屏幕方案及整合动画性能
    每个公司都不可避免会有一些数据可视化的需求,大数据时代,更是一发不可收拾,各种花里胡哨的大屏效果,让前端既烦恼又有些许刺激,刺激是新的挑战带来的,完成了各种风骚的展示效果,那种成就感让人身心愉悦。。。近日笔者也刚从一个大屏项目中展缓一口气,抽时间将遇到的坑,及一些问题的......
  • 基于VUE2-dataV和echarts实现的可视化大屏,百分比适配PC端
    可视化平台中,数据分别通过仪表盘、环状图、柱形图、曲线图、滚动表格等多种形式展示数据变化。可视化平台大致分为左、中、右三部分,左侧由能耗总览、耗能占比、库存预警构成,中间由数据总览、销售计划完成率构成,右侧由销售统计、销售排名(TOP8)、生产统计构成。平台右上角动态......
  • FormCreate低代码设计器怎么实现PC、移动端多端适配
    FormCreate支持将PC端设计的 ElementPlus 表单规则在移动端渲染为VantUI风格的表单,提供了一致的用户体验,并确保在不同设备上都能良好展示。功能演示编辑功能概述通过多端适配功能,您可以确保在不同设备上的表单显示效果一致。无论是在PC端还是移动端,表单都能根据设备类型自动......
  • FormCreate 低代码表单设计器全局方法使用指南
    FormCreate提供了一系列全局方法,本指南将详细介绍这些全局方法的使用方法、配置说明,并通过示例帮助新用户快速上手。如何调用全局方法在开始使用这些方法之前,你需要先确保已经导入了formCreate。以下是如何在项目中导入并使用FormCreate的全局方法的示例。导入FormCreate首先,......
  • 【Python插件入门】第4篇:单据表单插件
    【Python插件入门】第4篇:单据表单插件原创金蝶云·星空-BOS平台金蝶云·星空-基础架构金蝶云·星空-学习笔记金蝶云·星空-协同开发更多 CQ周玉立已关注247人赞赏了该文章 3.4万次浏览 未经作者许可,禁止转载编辑于2022年09月07日15:00:34摘要由A......