diff --git a/src/views/plugin/workflow/process/components/detail.vue b/src/views/plugin/workflow/process/components/detail.vue index 306efd6..c4068e4 100644 --- a/src/views/plugin/workflow/process/components/detail.vue +++ b/src/views/plugin/workflow/process/components/detail.vue @@ -163,23 +163,13 @@ export default { if (status != 'todo') { // 已办,删除字段默认值 option.detail = true if (column && column.length > 0) { // 处理column - column.forEach(col => { - if (col.type == 'dynamic') col.children.column.forEach(cc => { - delete cc.value - }) - delete col.value - }) + column.forEach(col => this.handleResolveEvent(col)) } if (group && group.length > 0) { // 处理group group.forEach(gro => { if (gro.column && gro.column.length > 0) { - gro.column.forEach(col => { - if (col.type == 'dynamic') col.children.column.forEach(cc => { - delete cc.value - }) - delete col.value - }) + gro.column.forEach(col => this.handleResolveEvent(col)) } }) } @@ -202,6 +192,17 @@ export default { } return { option, vars } }, + handleResolveEvent(col) { + const _this = this + delete col.value + let event = ['change', 'blur', 'click', 'focus'] + event.forEach(e => { + if (col[e]) col[e] = eval((col[e] + '').replace(/this/g, '_this')) + }) + if (col.event) Object.keys(col.event).forEach(key => col.event[key] = eval((col.event[key] + '').replace(/this/g, '_this'))) + + if (col.type == 'dynamic') col.children.column.forEach(cc => _this.handleResolveEvent(cc)) + }, // 审核 handleExamine(pass) { this.submitLoading = true