我有一个要求,比如一个项目取决于数组类型字段配置中的其他项目。我正在动态地将更改事件添加到一个字段,但它没有添加。代码如下所示,当我在数组中一一添加时,我需要用当前检查先前输入的元素值并决定。
JSON模式:
{
"type": "object",
"title": "Rules",
"properties": {
"LR": {
"type": "array",
"maxItems": 9,
"title": "LR",
"items": {
"type": "object",
"properties": {
"PMR": {
"type": "string",
"title": "PMR",
"pattern": "^(\\d{1,3})(\\.\\d{0,2})?$",
"widget": {
"formlyConfig": {
"templateOptions": {
"maxLength":"3",
"pmrChange":"this.pmrChange($event, field)"
}
}
}
}
}
}
}
}
}
**Adding event:**
extendFieldConfigs(): FormlyFieldConfig[] {
this.fieldConfig.fieldGroup.map((field) => {
const key = field.key ? field.key.toUpperCase() : null;
if (!key) return;
debugger;
switch (key) {
case "LR":
field.fieldArray &&
field.fieldArray.fieldGroup.map((fgrpItem) => {
const childKey = fgrpItem.key ? fgrpItem.key.toUpperCase() : null;
switch (childKey) {
case "PMR": {
fgrpItem.templateOptions.change = Function(
"field",
"$event",
fgrpItem.templateOptions.pmrChange
).bind(this);
break;
}
}
});
break;
}
});
return [this.fieldConfig];
}
pmrChange(a, b) {
alert(a);
}