跳至主要內容

通用

Mr.Hope大约 2 分钟

通用

表单视图通用

BaseFormWidget

基础 Form 组件,仅提供基本布局能力,(Form, Detail, Search)视图通用。默认使用 BaseFormWidget.ts 作为该功能的基类,该类继承了BaseElementObjectViewWidget

export abstract class BaseFormWidget<
  Props extends BaseElementObjectViewWidgetProps = BaseElementObjectViewWidgetProps
> extends BaseElementObjectViewWidget<Props> {

属性

  • formInstance: 非响应式变量,表示表单组件实例。
  • dataPath: 响应式变量,表示完整数据路径。
  • labelCol: 响应式变量,表示标签布局,设置 span offset 值,如 {span: 3, offset: 12} 或 sm: {span: 3, offset: 12}。
  • wrapperCol: 响应式变量,表示输入控件设置布局样式,用法同 labelCol
  • layout: 响应式变量,表示表单项标题排列方式: 水平或横向。优先级:this.getDsl().layout > this.metadataRuntimeContext.viewTemplate?.direction > FormLayout.VERTICAL

方法

getFormInstance()
  • 类型: 非响应式方法
  • 描述: 获取表单组件实例。
  • 返回值: formInstance (OioFormInstance | undefined): 表单组件实例
public getFormInstance(): OioFormInstance | undefined {}
setFormInstance()
  • 类型: 非响应式方法
  • 描述: 设置表单组件实例。
  • 入参:
    • formInstance (OioFormInstance | undefined): 表单组件实例
@Widget.Method()
private setFormInstance(formInstance: OioFormInstance | undefined) {}

枚举类型详解

FormLayout

定义了表单项标签和输入控件排列方式。

  • HORIZONTAL: 水平布局。
  • VERTICAL: 垂直布局。
  • INLINE: 内联布局。

BaseTableWidget

BaseTableWidget 是一个提供表格功能的基础组件,支持各种表格相关的操作,如排序、筛选、行内编辑等。

属性

  • fixedHeight: number | string | false
    • 表格的固定高度。可以是数字、字符串或者false,当为false时不设置固定高度。

响应式属性

  • checkbox: boolean
    • 是否启用复选框。默认为true
  • lineHeight: number | undefined
    • 表格行的高度。
  • enableSequence: boolean
    • 是否启用序列号列。默认为false
  • defaultPageSize: number
    • 默认的分页大小。如果未设置,则使用视图模板或全局默认值。
  • activeCount: number | undefined
    • 激活的记录数。可以是具体的数字,也可以是ActiveCountEnum枚举值。
  • inlineActiveCount: number | undefined
    • 内联模式下激活的记录数。如果未设置,则使用视图模板或全局默认值。
  • allowChecked: string | boolean | undefined
    • 控制记录是否可以被选中。可以是布尔值,也可以是表达式字符串。
  • operatorColumnDirection: string | undefined
    • 操作列的方向。
  • operatorColumnWidth: string | undefined
    • 操作列的宽度。
  • operatorColumnButtonType: string | undefined
    • 操作列按钮的类型。

方法

  • checkMethod: ({ row: ActiveRecord }) => boolean
    • 自定义复选框的选中逻辑。返回true表示该行可选,false表示不可选。
  • onPaginationChange: (current: number, pageSize: number) => void
    • 分页变化时的回调函数。
  • onSortChange: (sortList: ISort[]) => void
    • 排序变化时的回调函数。
  • onToggleRowExpand: ({ expanded: boolean, rowIndex: number }) => void
    • 展开或收起行时的回调函数。
  • onResizableChange: ({ column }) => Promise<void>
    • 列宽调整后的回调函数,用于更新用户偏好设置。
  • footerMethod: ({ columns: VxeTableDefines.ColumnInfo[], data: ActiveRecord[] }) => string[]
    • 表格脚部的自定义渲染方法。
  • onCurrentChange: (e) => void
    • 当前行变化时的回调函数。
  • onRowClick: ({ column, row }) => Promise<void>
    • 行点击事件的回调函数。
  • onRowDblClick: ({ column, row }) => Promise<void>
    • 行双击事件的回调函数。
  • clickActionWidget: (activeRecords: ActiveRecords, actionName: string) => Promise<void>
    • 触发行点击或双击事件关联的动作。