1.3.12 • Published 10 months ago

@moment-design/form-page v1.3.12

Weekly downloads
-
License
MIT
Repository
-
Last release
10 months ago

FormPage

可配置化标准表单编辑页面

运行环境

名称版本号
Node.js15+
NPM7+
Vue.js3+
@moment-design/web-vue1+

使用组件

安装依赖

npm install @moment-design/form-page --save

使用组件

import FormPage from "@moment-design/form-page"
import "@moment-design/form-page/dist/css/index.css"

<form-page :config=config @operate="handleOperate" @submit="submit"></form-page>

API

Events

事件名描述参数
operate点击操作按钮(key: string, rows?: any, index? number)
submit验证通过后提交表单(data: any)

Props config

参数名描述类型默认值
form配置表单config.form-
sections配置表单区块config.sections-

Props config.form

参数名描述类型默认值
title表单标题string-
disabled表单禁用boolean-
operatesAlign底部操作按钮对齐方式'left' | 'center' | 'right'-
operates底部操作按钮ConfigFormOperates-
data表单数据any-
others其他扩展属性any-

Props ConfigFormOperates

参数名描述类型默认值
left底部左侧操作按钮Array\-
centerShowResetButton底部中间重置按钮boolean-
centerShowSubmitButton底部中间保存按钮boolean-
center底部中间操作按钮Array\-
right底部右侧操作按钮Array\-

Props ConfigFormOperatesItem

参数名描述类型默认值
name操作按钮名称string-
others操作按钮扩展属性others?: { permission?: string; key: string: any; };-

Props config.sections

参数名描述类型默认值
title区块标题string-
items区块表单项Array\-

Props ConfigSectionsItem

参数名描述类型默认值
type表单项类型undefined | 'text' | 'switch' | 'input' | 'textarea' | 'number' | 'select' | 'cascader' | 'radio' | 'checkbox' | 'date' | 'time' | 'daterange' | 'slot' | 'hidden'-
label表单项 labelstring-
name表单项 namestring-
size表单项大小'mini' | 'small' | 'medium' | 'large'-
rules表单项校验Array\-
info表单项介绍string-
tooltip表单项提示string-
options下拉 / 级联数据Array\-
others其他扩展属性any-

类型校验

export interface ILForm {
  /**
   * 表单配置
   */
  form: {
    /**
     * 表单标题
     */
    title?: string;
    /**
     * 表单禁用
     */
    disabled?: boolean;
    /**
     * 底部操作按钮对齐方式
     */
    operatesAlign?: 'left' | 'center' | 'right';
    /**
     * 底部操作按钮
     */
    operates?: {
      /**
       * 底部左侧操作按钮
       */
      left?: Array<ILFormOperates>;
      /**
       * 底部中间重置按钮
       */
      centerShowResetButton?: boolean;
      /**
       * 底部中间保存按钮
       */
      centerShowSubmitButton?: boolean;
      /**
       * 底部中间操作按钮
       */
      center?: Array<ILFormOperates>;
      /**
       * 底部右侧操作按钮
       */
      right?: Array<ILFormOperates>;
    };
    /**
     * 表单数据
     */
    data: any;
    /**
     * 其他扩展属性
     */
    others?: any;
  };
  sections: Array<{
    /**
     * 区块标题
     */
    title?: string;
    /**
     * 区块表单项
     */
    items: Array<{
      /**
       * 表单项类型
       */
      type:
        | undefined
        | 'text'
        | 'switch'
        | 'input'
        | 'textarea'
        | 'number'
        | 'select'
        | 'cascader'
        | 'radio'
        | 'checkbox'
        | 'date'
        | 'time'
        | 'daterange'
        | 'slot'
        | 'hidden';
      /**
       * 表单项 label
       */
      label: string;
      /**
       * 表单项 name
       */
      name: string;
      /**
       * 表单项大小 "small" | "medium" | "large"
       */
      size?: 'mini' | 'small' | 'medium' | 'large';
      /**
       * 表单项校验
       */
      rules?: Array<any>;
      /**
       * 表单项介绍
       */
      info?: string;
      /**
       * 表单项提示
       */
      tooltip?: string;
      /**
       * 下拉 / 级联数据
       */
      options?: Array<any>;
      /**
       * 其他扩展属性
       */
      others?: any;
    }>;
  }>;
}

export interface ILFormOperates {
  /**
   * 操作按钮名称
   */
  name: string;
  /**
   * 操作按钮扩展属性
   */
  others?: {
    /**
     * 绑定权限节点
     */
    permission?: string;
    /**
     * 其他扩展属性
     */
    [key: string]: any;
  };
}
1.3.12

10 months ago

1.3.10

11 months ago

1.3.11

11 months ago

1.3.18

11 months ago

1.3.9

11 months ago

1.3.7

2 years ago

1.3.8

2 years ago

1.3.6

2 years ago

1.3.5

2 years ago

1.3.3

2 years ago

1.3.2

2 years ago

1.2.3

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.1.1

3 years ago

1.0.2

3 years ago

1.1.0

3 years ago

1.1.9

3 years ago

1.1.8

3 years ago

1.0.9

3 years ago

1.1.7

3 years ago

1.0.8

3 years ago

1.1.6

3 years ago

1.0.7

3 years ago

1.1.5

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.1.3

3 years ago

1.0.4

3 years ago

1.1.2

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago