{"remainingRequest":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\eipControl\\EipCollapse.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\cssc-fvue\\src\\components\\eipControl\\EipCollapse.vue","mtime":1667804639071},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\cssc-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n\r\nimport PageBus from \"@/components/eipControl/bus/PageBus.js\";\r\nexport default {\r\n name: \"eip-collapse\",\r\n components: {},\r\n props: [\"openDefault\", \"isVerify\"],\r\n data() {\r\n return {\r\n openDefaultArr: this.openDefault ? this.openDefault : [],\r\n oldOpenDefaultArr: []\r\n };\r\n },\r\n mounted() {\r\n this.oldOpenDefaultArr = JSON.parse(JSON.stringify(this.openDefaultArr));\r\n },\r\n methods: {\r\n //折叠面板改变时,对折叠面板内的表单进行校验\r\n //1.关闭面板时,需要表单局部验证,验证不通过则需要中断关闭效果\r\n //2.面板点击事件 需要判断当前点击是否是关闭,当前展示的数组与上一个数组进行比较\r\n //3.需要知道,当前点击的面板是哪个面板.\r\n handleChange(val) {\r\n //1.是否开启 2.是否是关闭面板\r\n if (!this.isVerify || val.length > this.oldOpenDefaultArr.length) {\r\n this.oldOpenDefaultArr = val;\r\n return;\r\n }\r\n //得到被关闭的面板名\r\n let removeArr = JSON.parse(JSON.stringify(this.oldOpenDefaultArr));\r\n for (let y = 0; y < val.length; y++) {\r\n removeArr.remove(val[y]);\r\n }\r\n let erritems = [];\r\n let formElementAry = document.getElementsByName(\"online-form\");\r\n let frmInst = formElementAry[0].__vue__;\r\n let childrens = frmInst.$refs.onlineForm.$refs;\r\n frmInst.$root.$validator.validateAll(\"custom-form\").then(result => {\r\n if (!result) {\r\n let curEl = childrens[removeArr[0]].$el;\r\n this.$validator.errors.items.forEach(item => {\r\n if (curEl.contains(document.getElementsByName(item.field)[0])) {\r\n erritems.push(item);\r\n }\r\n });\r\n } \r\n //拼接提示消息\r\n let msg = \"\";\r\n for (let item of erritems) {\r\n let fieldLabel = \"\";\r\n if (item.field) {\r\n fieldLabel = item.field;\r\n }\r\n if (item.field && item.field.indexOf(\"-\") != -1) {\r\n fieldLabel = item.field.substr(item.field.indexOf(\"-\") + 1);\r\n }\r\n msg += fieldLabel + \" \" + item.msg + \"
\";\r\n }\r\n if (msg) {\r\n //重新打开折叠面板\r\n this.openDefaultArr = JSON.parse(\r\n JSON.stringify(this.oldOpenDefaultArr)\r\n );\r\n this.$notify.error({\r\n title: this.$t(\"common.errTip\"),\r\n dangerouslyUseHTMLString: true,\r\n message: msg\r\n });\r\n }else {\r\n this.oldOpenDefaultArr = val;\r\n }\r\n });\r\n }\r\n },\r\n watch: {}\r\n};\r\n",null]}