1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
export default {
computed: {
// 快照条件下,modifySet显示红色
isShowRed () {
let showRed = ''
// 快照模式下显示红色下划线
if (this.mode === "display") {
// 获取prop两种方式,第一种是组件的form-item上的prop,或者是customModifykey
let prop = this.customModifykey || this.$parent.prop
if (!prop) {
return showRed;
}
let propKey = prop.substring(prop.lastIndexOf(".") + 1)
// 如果组件直接传入了markSet数组所在的对象则直接使用此对象中的markSet,否则通过prop路径到model中去找
if (this.markSetData) {
let markSetData = this.markSetData
if (markSetData.markSet && markSetData.markSet.length > 0 && markSetData.markSet.includes(propKey)) {
showRed = 'red'
}
if (markSetData.markSetX && markSetData.markSetX.length > 0 && markSetData.markSetX.includes(propKey)) {
showRed = 'green'
}
} else {
if (!this.root) {
return showRed;
}
let tempObj = this.root.model
let propArr = prop.split('.')
propArr.pop()
let curProp = null
if (propArr && propArr.length > 0) {
while (curProp = propArr.shift()) {
if (tempObj[curProp]) {
tempObj = tempObj[curProp]
}
}
}
if (tempObj.markSet && tempObj.markSet.length > 0 && tempObj.markSet.includes(propKey)) {
showRed = 'red'
}
if (tempObj.markSetX && tempObj.markSetX.length > 0 && tempObj.markSetX.includes(propKey)) {
showRed = 'green'
}
}
}
return showRed
}
},
methods: {
resetValidate() {
let prop = this.customModifykey || this.$parent.prop
if (prop && this.root) {
this.root.$refs['modelForm'].clearValidate([prop]);
}
}
}
}