单行文本
大约 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 {}