计算组件字段
通过 computed 字段可动态计算组件的指定字段,当依赖值发生变化时将自动重新计算并更新结果。
数据结构
typescript
type Computed = {
[key: string]: (formData: Object, api: Api, rule: Rule) => any;
};
注意
如果需要修改对象中的属性值,可通过 rule.variableName.attributeName
格式计算嵌套属性。
在计算函数内部应避免引用自身的属性值,以防止出现递归死循环。
示例
计算组件的配置项(props)
根据单选框的选择状态(禁用或可输入),实时计算并设置输入框的disabled属性,实现组件属性的条件化控制。
计算子表单中组件显示状态
根据主表单单选框的值(显示或隐藏),实时计算并设置子表单中输入框的hidden属性,实现跨层级的条件显示控制。
计算组件的值
根据单选框的选中值,实时计算输入框的显示内容(显示对应选项的标签)并设置只读属性,实现数据联动和状态控制。
计算自定义属性的值
根据单选框的选择值(必填或非必填),实时设置输入框的$required属性,实现表单验证规则的动态控制。