首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

年度实用技巧 | 越折腾越有趣,封装了一个表单组件

下面主要将设计思路和实现方式类型区分list数组,根据每个元素的fieldtype区分不同的展示内容。...数字类型的输入框的特别之处在于输入的数值可以设置最小值和最大值、小数点、每次可以改变的步数。这些都可以通过设置对应的属性进行控制。数字类型的输入框支持展示单位,通过unit变量控制单位的展示。...日期类型支持不同的时间展示方式,通过format变量实现。日期类型可以设置可选时间范围,可选范围包括起日和止日,也可单独设置起日或止日。...(灵感就是这么一瞬间就来了)select下拉选择器类型使用的antd提供的Select组件。...有一种特殊情况,当单选项选择否或拒绝时,需要输入原因或者说明,所以增加了可输入其他的文本域功能。textArea文本域类型使用的antd提供的Input.TextArea组件。

15320
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    详细剖析|袋鼠云数栈前端框架Antd 3.x 升级 4.x 的踩坑之路

    ● extra 针对于想放置于组件下面内容可以使用 extra 来实现。...UI 升级和 antd 升级之后,Form 表单在数栈中的应用发生了较大的变化,从老版本的 label/component 横向排版改为了纵向改版,在横向空间不⾜的情况下,使⽤上下结构能有效提⾼填写表单的效率...这样我们就可以直接复用选择框部分的代码,而自定义 Select 和 TreeSelect 对应的列表或者树形结构了。...・解决方案 通过在 rowSelection 中设置 columnWidth 和 fixed 解决。...// 3.x activeKey={undefined} // 4.x activeKey={null} 总结 该篇文章详细讲解了数栈前端团队如何从 antd3 升级到 antd4 的详细步骤,以及团队在实践过程中发现的一些问题和对应的解决方案

    4.1K30

    ​年终盘点: 复盘20+基于React的开源管理后台&插件

    几秒钟内可撤消更新和删除 支持任何身份验证提供者(RESTAPI,OAuth,BasicAuth等) 功能齐全的数据(排序,分页,过滤器) 支持键入筛选 支持任何表单布局(简单、选项卡等) 自定义操作用于各种数据类型...5.Ant Design (Antd)是一个基于React技术栈的UI组件库,由蚂蚁金服前端团队开发和维护。Antd提供了丰富的组件和配套的设计规范,可以帮助开发者快速构建高质量的Web应用。...16.Notus React Notus React 是免费和开源的。它不会更改 Tailwind CSS 中的任何 CSS。...它具有多个 HTML 元素,并带有 ReactJS、Vue 和 Angular 的动态组件。 项目功能: 1.CSS 组件:Notus React 带有大量完全编码的 CSS 组件。...作为开发人员,您提供数据库模型(如帖子、评论、商店、产品或您的应用程序使用的任何其他内容),AdminJS 生成允许您(或其他受信任用户)管理内容的 UI。

    1.7K10

    Angular17 使用 ngx-formly 动态表单

    ngx-formly 是 Angular 应用实现响应式的动态表单框架,不仅支持自动生成表单、易于上手的自定义字段扩展、自定义验证扩展、支持 Formly Schema 和 JSON Schema,还有开箱即用的内置表单主题...Validation 表单验证主要包括:Formly 内置验证、自定义验证消息及自定义验证函数三大块,自定义验证消息和验证函数分别还可以正在全局注册和指定字段注册,在不同的场景可以考虑不同的自定义方式...,当点击提交按钮或删除字段录入的内容时字段边框颜色会变成红色,表示字段验证不通过: // 省略了部分字段 [ { key: 'username', props: { label...,现在就为字段添加自定义的验证消息,自定义验证消息同时支持字符串和函数两种方式设置; 全局注册自定义验证消息,需要在 FormlyModule 注册时通过 validationMessages 选项设置...label}格式不正确`, }, }, } 自定义携带选项的验证函数: 在前面为邮箱定义的验证函数使用了一个比较通用的正则,如果在实际使用时除了直接修改验证函数中的正则外,还可以通过第三个选项参数实现验证范围的缩小

    71310

    在业务代码中常用到的Vue数据通信方式

    本文是笔者总结过往项目,在vue使用到的一些数据通信方案,希望在实际项目中有些帮助和思考。 正文开始......已经通过:dataList.sync="dataList"在props上加了修饰符了 在Search.vue中可以看到 ......,关于`vuex`[1]如何使用参考官方文档,这里不讲如何使用vuex,贴上关键代码 // store/index.js import Vue from 'vue'; import Vuex from...store.state.dataList; } } } vuex的思想就是数据存储的一个仓库,数据共享,本质store也是一个单例模式,所有的状态数据以及事件挂载根实例上,然后所有组件都能访问和操作...EventBus 总线事件 这种方式平时业务上也会有用得到,特别是在表单验证中就会有 // utils/eventBus.js export default class EventBus { constructor

    5.1K50

    Vue 折腾记 - (17) 基于Ant Design Vue 封装一个配置式的表单组件

    ---- 实现思路和功能 基础的功能直接配置上来渲染,而上传组件就不大合适了; 所以选择了slot来实现,如何保证传入的form-item的布局一致,则是拿slot-scope 我这边选型用的是vue...2.6 +的版本,所以直接用的是最新的写法 而且作为表单组件,校验这些肯定需要考虑,所以数据的构造改造了下, 对于校验规则这些,因为走的是antd form用的那套,所以我直接在传递的时候把对应的属性拍平了...formField3', defaultValue: '0', options: [ { label: '选项...this.dataSource.map(item => ({ ...this.GlobalOptions, ...item })); }, formItemLayout() { // 更改布局项目的尺寸...排查了许久,目前还没找出具体缘由; ---- 总结 antd vue版本目前的功能复现上,还是有所欠缺,可能vue和react实现的机子不一致导致; 不管怎么说,不考虑极端情况下,目前这个库用起来感觉还好

    4.2K40

    6小时撸一个拖拽式表单生成低代码工具——leggo

    所以leggo并非只能应用于简单的表单设计场景,这完全取决于开发者的大胆拓展。 上手成本极低。 如果你熟悉React和Antd,则你只需要学习1-2个leggo的Api就可以开始在项目中部署。...Antd库中Form、Form.Item以及相关input组件的所有属性和事件仍旧可以正常定义和使用。...从使用的角度来说LeggoForm和Antd中的Form几乎没有任何差别(除了必须要挂载leggo这个属性)。...无论表单后续如何更新和渲染,中间函数都不会运行(除非你又通过leggo.resetSchemaModel重新注入一个新的schemaModel)。所以你不需要担心由中间件函数可能导致的性能问题。...还有一种常见的场景就是关于Select或Radio等组件需要远程拉取options数据,通过leggo也同样可以很方便实现这样的需求。

    1.3K00

    Hooks + TS 搭建一个任务管理系统(四)-- 搜索功能实现

    custom hook 实现了项目的增删改查,也写很多复用性很高的 hook ,这样我们可以在后面的代码中复用,优化和缩减我们的开发时间 知识点抢先看 封装 userSelect 组件 将输入框内容映射到...url 上 利用防抖优化输入框请求 先献上效果图 一、封装 UserSelect 组件 这次的项目采用的是 Antd 组件库,在这部分中我们采用 Form 表单以及 Input 来实现搜索框的样式,...利用 antd 组件来封装自定义组件,需要继承它的原先的类型,来保持它的 props 正常工作 我们先来看看 IdSelect 应当接收的参数类型 // 继承 Select 身上的方法 type SelectProps...的变化,确实如此,当我们在输入框中输入内容时,或者时 Select 中选择内容时,都应该要映射到 url 中,这样我们将 url 复制在新页面打开,还会保留同样的信息,这种功能也是非常常见的,例如掘金社区的文章标题...useUrlQueryParam 来设置和查询相关的query 数据,返回的是一个数组,形式类似于 useState ,一个是值,一个更改这个值 我们可以看到这个 hook 监听的 url query

    68520

    JeecgBoot 3.4.2 版本发布,Vue3版本大升级

    vue3, 自动切换vue3库表菜单列表支持通过菜单名模糊查询支持年度控件同步vben部分代码升级antd3后一系列兼容改造工作表单label支持自定义显示字数,超长截取显示Table表格自定义排序字段例子...,如果有多个表单项,会导致收集搭乱(item里面有多个元素,会报警告)antd3采用dayjs替换掉了moment,升级需要搜索moment换成dayjs(dayjs与moment语法差不多,替换不难)...针对Table废弃slots 插槽和Form.tem只能一个表单项,代码尚未改造完,虽然有警告,但不影响使用(antd3做了兼容)Tabs的动画默认没有了,如果出现问题,需要加上animated参数样式更名...,运行后lable的宽度很窄issues/I5L3SK表格展示 右侧选项时,列选项为空issues/139JVxeTable的JVxeTypes.inputNumber类型项目无法输入小数点issues...CAS集成方案,项目中已经提供完善的对接代码表单设计器,支持用户自定义表单布局,支持单表,一对多表单、支持select、radio、checkbox、textarea、date、popup、列表、宏等控件专业接口对接机制

    2.1K30

    关于float元素浮动后高度变化导致排列错位的问题

    developer/article/2470497 这篇文章主要介绍了工作流的概念及在 Python 中的实现方法,包括虚拟环境搭建、VSCode 配置、基础工作流示例、多个事件的处理以及工作流可视化分析等内容...同时,作者还推荐了一篇关于构建加载状态与流畅交互的精妙艺术的文章,并在结尾介绍了自己的技术背景和对技术交流分享的热情。 前言 你好,我是喵喵侠。...在现代Web布局中,flex和grid布局用到的会比较多,但我们仍然会遇到一些老旧项目,里面的前端UI框架,采用的还是float布局。...下面我来为你讲解,float元素高度变化后,是如何影响相邻元素的,以及如何解决这样的问题。...$message.info('表单已重置'); }, }, }); 效果如下: 咋一看没问题,但只要你在select中多选,选择足够多

    18551

    React 折腾记 - (6) 基于React 16.6 + Antd 3.10.7封装的一个声明式的查询组件

    ---- 抽离思路及实现 思路 合并props传递的值,尽可能的减少传递的东西(在组件内部实现默认值合并),把渲染的子组件通过遍历json去实现; 整个查询区域用的antd表单组件,聚合所有表单数据(自动双向绑定...,设置默认值等); 为了降低复杂度,子组件不考虑dva来维护状态,纯靠props和state构建,然后统一把构建的表单数据向父级暴露.....submit"> 下载报表 复制代码 数据源格式 data的数据格式基本和antd...false, factoryData: [ { ctype: 'input', attr: { placeholder: '请输入查询内容...(若是用ts的小伙伴,运行时类型推断比这个强大的多,还不会打包冗余代码) 没发布npm , 只是提供我写的思路,对您有没有帮助,见仁见智 依赖moment,antd 可以自行拓展的点 比如垂直展示 比如表单校验

    2.6K10

    前端ReactJS技术介绍

    WEB应用程序基本架构 胖服务端 fat_server.png 这个架构的特点: 后台良好的分层模型 页面由后台输出至浏览器,一般采用JSP、PHP等动态页面技术处理页面的动态内容 一些改进: 引入AJAX...View 与 Model 不发生联系,都通过 Presenter 传递。...基于React进行开发时所有的DOM构造都是通过虚拟DOM进行,每当数据变化时,React都会重新构建整个DOM树,然后React将当前整个DOM树和上一次的DOM树进行对比,得到DOM结构的区别,然后仅仅将需要变化的部分进行实际的浏览器...这样,在保证性能的同时,开发者将不再需要关注某个数据的变化如何更新到一个或多个具体的DOM元素,而只需要关心在任意一个数据状态下,整个界面是如何Render的。...事实上,通过 React 你唯一要做的事情就是构建组件。得益于其良好的封装性,组件使代码复用、测试和关注分离(separation of concerns)更加简单。

    5.5K40

    你不知道的33个令人惊艳的React开发库

    而且是由其他开发人员经过良好测试和维护的令人惊叹的 React 库。 formlink image.png Formik 是世界上最流行的 React 和 React Native 开源表单库。...react-select image.png 一个灵活且美观的 ReactJS 选择输入控件,具有多选、自动完成、异步和可创建的支持。...react-drag-drop-files image.png 轻量且简单的 Reactjs 拖放文件库,可使用非常灵活的更改选项,因此您可以为拖放区域放置任何您想要的设计。...您可以更改图像的宽度、高度、格式、旋转和质量。它返回调整大小后的图像的新 base64 URI 或 Blob。URI 可以用作组件的源。...react-popup image.png Reactjs-popup 是一个简单的 React 弹出组件,可帮助您为下一个 React 应用程序创建简单和复杂的模态、工具提示和菜单。

    35320

    React进阶(3)-上手实践Redux-如何改变store中的数据

    前言 在前面的一文React进阶(2)-上手实践Redux-如何获取store的数据当中,已经知道组件怎么获取store的数据,并渲染到页面上,那么在该节当中揭示怎么更改store的数据,实现页面的更新...action代码,实现一个更改store的数据,并达到了与页面更新的操作 再次来梳理一下更改store的数据的一个过程,经历了哪些具体操作 1....  输入框表单内添加内容,点击右侧的提交按钮,将Input框的内容添加到底下的列表当中 具体效果如下所示 以下是完整的具体代码 import React from 'react'; import ReactDOM...newState.inputValue = ''; // 提交表单内容后,让表单内容置空操作             return newState; // 返回newState         }         ...store的数据,是通过getState方法进行获取store中的所有状态 如何保持页面的组件与store数据同步更新,需要注册订阅subscribe方法,该方法接收一个函数,在该接收的函数内触发重新获取

    2.6K30
    领券