fix: set non deletable control value boundary error #595

pr675
Hufe921 2 years ago
parent c6c2f98149
commit bcf311ff19

@ -650,6 +650,7 @@ export class Control {
editorOptions: this.options
})
const text = new TextControl(element, this)
this.activeControl = text
if (value) {
text.setValue(formatValue, controlContext, controlRule)
} else {
@ -657,6 +658,7 @@ export class Control {
}
} else if (type === ControlType.SELECT) {
const select = new SelectControl(element, this)
this.activeControl = select
if (value) {
select.setSelect(value, controlContext, controlRule)
} else {
@ -664,13 +666,17 @@ export class Control {
}
} else if (type === ControlType.CHECKBOX) {
const checkbox = new CheckboxControl(element, this)
this.activeControl = checkbox
const codes = value?.split(',') || []
checkbox.setSelect(codes, controlContext, controlRule)
} else if (type === ControlType.RADIO) {
const radio = new RadioControl(element, this)
this.activeControl = radio
const codes = value ? [value] : []
radio.setSelect(codes, controlContext, controlRule)
}
// 模拟控件激活后销毁
this.activeControl = null
// 修改后控件结束索引
let newEndIndex = i
while (newEndIndex < elementList.length) {
@ -681,6 +687,8 @@ export class Control {
i = newEndIndex
}
}
// 销毁旧控件
this.destroyControl()
// 页眉、内容区、页脚同时处理
const data = [
this.draw.getHeaderElementList(),

Loading…
Cancel
Save