跳至主要內容

单行文本

Mr.Hope大约 2 分钟

单行文本

表单

单行文本 (FormStringFieldWidget)

表单单行文本基础类,用于处理单行文本输入的通用功能。默认使用 FormStringFieldWidget.ts 作为该功能的基类,表单单行文本字段继承了 FormInputAbstractFieldWidget

export class FormStringFieldWidget extends FormInputAbstractFieldWidget<
  string,
  RuntimeStringField
> {}

参数

  • maxLength: 响应式变量,表示字符串输入的最大长度。默认值为 1024。
  • minLength: 响应式变量,表示字符串输入的最小长度。默认值为 0。
  • showCount: 响应式变量,表示是否显示字符计数后缀。默认为 false
  • patternType: 响应式变量,表示字符串的输入格式类型。
  • pattern: 响应式变量,表示字符串的输入格式。
  • clearSetEmpty: 响应式变量,表示[占位符]。默认为 true
  • crypto: 响应式变量,表示是否加密密码。默认为 false
  • visibleIcon: 响应式变量,表示输入可见状态的图标。默认为 'oinone-visible'。
  • invisibleIcon: 响应式变量,表示输入不可见状态的图标。默认为 'oinone-invisible'。
  • type: 响应式变量,表示输入框的类型。默认为 InputType.TEXT

方法

getLimitLength()
  • 类型: 响应式方法
  • 描述: 拿到Dsl中定义的输入的最大或最小长度。
  • 入参:
    • type ('maxLength' | 'minLength'): 最大或最小长度。
  • 返回值:
    • number | null: 有则返回长度,无则返回 null
@Widget.Reactive()
protected getLimitLength(type: 'maxLength' | 'minLength') {}
validator()
  • 类型: 非响应式方法
  • 描述: 异步验证输入值的有效性。
  • 返回值:
    • Promise<ValidatorInfo>: 验证结果。
@Widget.Method()
public async validator(): Promise<ValidatorInfo> {}
change(value: string | null)
  • 类型: 非响应式方法
  • 描述: 处理输入值改变事件,将空字符串置为 null
  • 入参:
    • value : 输入的值。
@Widget.Method()
public change(value) {}

如何替换


表格

单行文本 (TableStringFieldWidget)

表格单行文本基础类,用于处理单行文本输入的通用功能。默认使用 TableStringFieldWidget.ts 作为该功能的基类,表格单行文本字段继承了 BaseTableFieldWidget

export class TableStringFieldWidget extends BaseTableFieldWidget<string> {}

参数

  • type: 响应式变量,表示当前表格单行文本的类型。

方法

compute()
  • 类型: 非响应式方法
  • 描述: 计算表格单行文本的值。
  • 入参:
    • context (Object): 计算上下文信息。
public compute(context) {}

如何替换

import {
  TableStringFieldWidget,
  SPI,
  BaseFieldWidget,
  ViewType,
  ModelFieldType,
} from "@kunlun/dependencies";

@SPI.ClassFactory(
  BaseFieldWidget.Token({
    viewType: ViewType.Table,
    ttype: [
      ModelFieldType.String,
      ModelFieldType.Phone,
      ModelFieldType.Email,
      ModelFieldType.Text,
    ],
  })
)
export class CustomTableStringField extends TableStringFieldWidget {}