bd1c0940b3b38794df4746ba8d45820e.json 17 KB

1
  1. {"remainingRequest":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\k-form-design\\packages\\components\\KFormBuild\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\k-form-design\\packages\\components\\KFormBuild\\index.vue","mtime":1688725441947},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1688725407620},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1688725391035},{"path":"E:\\mec-cloud_IntelligentManufacturing_CRM\\mec-cloud_IntelligentManufacturing_CRM\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1688725415411}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQovKg0KICogYXV0aG9yIGtjeg0KICogZGF0ZSAyMDE5LTExLTIwDQogKiBkZXNjcmlwdGlvbiDlsIZqc29u5pWw5o2u5p6E5bu65oiQ6KGo5Y2VDQogKi8NCmltcG9ydCBidWlsZEJsb2NrcyBmcm9tICIuL2J1aWxkQmxvY2tzIjsNCmltcG9ydCB6aENOIGZyb20gImFudC1kZXNpZ24tdnVlL2xpYi9sb2NhbGUtcHJvdmlkZXIvemhfQ04iOw0KaW1wb3J0IHsgbGF6eUxvYWRUaWNrIH0gZnJvbSAiLi4vLi4vdXRpbHMvaW5kZXgiOw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICJLRm9ybUJ1aWxkIiwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgbG9jYWxlOiB6aENOLA0KICAgICAgZm9ybTogdGhpcy4kZm9ybS5jcmVhdGVGb3JtKHRoaXMpLA0KICAgICAgdmFsaWRhdG9yRXJyb3I6IHt9LA0KICAgICAgZGVmYXVsdER5bmFtaWNEYXRhOiB7fQ0KICAgIH07DQogIH0sDQogIC8vIHByb3BzOiBbInZhbHVlIiwgImR5bmFtaWNEYXRhIl0sDQogIHByb3BzOiB7DQogICAgdmFsdWU6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIHJlcXVpcmVkOiB0cnVlDQogICAgfSwNCiAgICBkeW5hbWljRGF0YTogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgZGVmYXVsdDogKCkgPT4gew0KICAgICAgICByZXR1cm4ge307DQogICAgICB9DQogICAgfSwNCiAgICBjb25maWc6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6ICgpID0+ICh7fSkNCiAgICB9LA0KICAgIGRpc2FibGVkOiB7DQogICAgICB0eXBlOiBCb29sZWFuLA0KICAgICAgZGVmYXVsdDogZmFsc2UNCiAgICB9LA0KICAgIG91dHB1dFN0cmluZzogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IGZhbHNlDQogICAgfSwNCiAgICBkZWZhdWx0VmFsdWU6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6ICgpID0+ICh7fSkNCiAgICB9DQogIH0sDQogIGNvbXBvbmVudHM6IHsNCiAgICBidWlsZEJsb2Nrcw0KICB9LA0KICBjb21wdXRlZDogew0KICAgIGdldER5bmFtaWNEYXRhKCkgew0KICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzLmR5bmFtaWNEYXRhID09PSAib2JqZWN0IiAmJg0KICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmR5bmFtaWNEYXRhKS5sZW5ndGgNCiAgICAgICAgPyB0aGlzLmR5bmFtaWNEYXRhDQogICAgICAgIDogd2luZG93LiRrZmJfZHluYW1pY0RhdGEgfHwge307DQogICAgfQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgLy8gbW9tZW50LA0KICAgIGhhbmRsZVN1Ym1pdChlKSB7DQogICAgICAvLyDmj5DkuqTmjInpkq7op6blj5HvvIzlubbop6blj5FzdWJtaXTlh73mlbDvvIzov5Tlm55nZXREYXRh5Ye95pWwDQogICAgICBlLnByZXZlbnREZWZhdWx0KCk7DQogICAgICB0aGlzLiRlbWl0KCJzdWJtaXQiLCB0aGlzLmdldERhdGEpOw0KICAgIH0sDQogICAgcmVzZXQoKSB7DQogICAgICAvLyDph43nva7ooajljZUNCiAgICAgIHRoaXMuZm9ybS5yZXNldEZpZWxkcygpOw0KICAgIH0sDQogICAgZ2V0RGF0YSgpIHsNCiAgICAgIC8vIOaPkOS6pOWHveaVsO+8jOaPkOS+m+eItue6p+e7hOS7tuiwg+eUqA0KICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICB0aGlzLmZvcm0udmFsaWRhdGVGaWVsZHMoKGVyciwgdmFsdWVzKSA9PiB7DQogICAgICAgICAgICBpZiAoZXJyKSB7DQogICAgICAgICAgICAgIHJlamVjdChlcnIpOw0KICAgICAgICAgICAgICAvKioNCiAgICAgICAgICAgICAgICogQGF1dGhvcjogbGl6aGljaGFvPG1ldGVvcm9jQG91dGxvb2suY29tPg0KICAgICAgICAgICAgICAgKiBARGVzY3JpcHRpb246IOWkmuWuueWZqOagoemqjOaXtu+8jOaPkOS+m2Vycm9y6L+U5Zue57uZ5aSa5a655Zmo6L+b6KGM5Yik5pat44CCDQogICAgICAgICAgICAgICAqLw0KICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRvckVycm9yID0gZXJyOw0KICAgICAgICAgICAgICByZXR1cm47DQogICAgICAgICAgICB9DQogICAgICAgICAgICB0aGlzLnZhbGlkYXRvckVycm9yID0ge307DQogICAgICAgICAgICB0aGlzLiRyZWZzLmJ1aWxkQmxvY2tzLmZvckVhY2goaXRlbSA9PiB7DQogICAgICAgICAgICAgIGlmICghaXRlbS52YWxpZGF0aW9uU3ViZm9ybSgpKSB7DQogICAgICAgICAgICAgICAgcmVqZWN0KGVycik7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgaWYgKHRoaXMub3V0cHV0U3RyaW5nKSB7DQogICAgICAgICAgICAgIC8vIOmcgOimgeaJgOaciXZhbHVl6L2s5oiQ5a2X56ym5LiyDQogICAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlcykgew0KICAgICAgICAgICAgICAgIGNvbnN0IHR5cGUgPSB0eXBlb2YgdmFsdWVzW2tleV07DQogICAgICAgICAgICAgICAgaWYgKHR5cGUgPT09ICJzdHJpbmciIHx8IHR5cGUgPT09ICJ1bmRlZmluZWQiKSB7DQogICAgICAgICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICJvYmplY3QiKSB7DQogICAgICAgICAgICAgICAgICB2YWx1ZXNba2V5XSA9IGBrLWZvcm0tZGVzaWduIyR7dHlwZX0jJHtKU09OLnN0cmluZ2lmeSgNCiAgICAgICAgICAgICAgICAgICAgdmFsdWVzW2tleV0NCiAgICAgICAgICAgICAgICAgICl9YDsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgdmFsdWVzW2tleV0gPSBgay1mb3JtLWRlc2lnbiMke3R5cGV9IyR7U3RyaW5nKHZhbHVlc1trZXldKX1gOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgIHJlc29sdmUodmFsdWVzKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIHJlc29sdmUodmFsdWVzKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9KTsNCiAgICAgICAgfSBjYXRjaCAoZXJyKSB7DQogICAgICAgICAgcmVqZWN0KGVycik7DQogICAgICAgIH0NCiAgICAgIH0pOw0KICAgIH0sDQogICAgc2V0RGF0YShqc29uKSB7DQogICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gew0KICAgICAgICBsYXp5TG9hZFRpY2submV4dFRpY2soKCkgPT4gew0KICAgICAgICAgIHRyeSB7DQogICAgICAgICAgICBpZiAodGhpcy5vdXRwdXRTdHJpbmcpIHsNCiAgICAgICAgICAgICAgLy8g5bCG6Z2ec3RyaW5n5pWw5o2u6L+Y5Y6fDQogICAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGpzb24pIHsNCiAgICAgICAgICAgICAgICBpZiAoIWpzb25ba2V5XS5zdGFydHNXaXRoKCJrLWZvcm0tZGVzaWduIyIpKSB7DQogICAgICAgICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBqc29uW2tleV0uc3BsaXQoIiMiKTsNCiAgICAgICAgICAgICAgICBpZiAoYXJyYXlbMV0gPT09ICJvYmplY3QiKSB7DQogICAgICAgICAgICAgICAgICBqc29uW2tleV0gPSBKU09OLnBhcnNlKGFycmF5WzJdKTsNCiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGFycmF5WzFdID09PSAibnVtYmVyIikgew0KICAgICAgICAgICAgICAgICAganNvbltrZXldID0gTnVtYmVyKGFycmF5WzJdKTsNCiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGFycmF5WzFdID09PSAiYm9vbGVhbiIpIHsNCiAgICAgICAgICAgICAgICAgIGpzb25ba2V5XSA9IEJvb2xlYW4oYXJyYXlbMl0pOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICB0aGlzLmZvcm0uc2V0RmllbGRzVmFsdWUoanNvbik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICB0aGlzLmZvcm0uc2V0RmllbGRzVmFsdWUoanNvbik7DQogICAgICAgICAgICB9DQogICAgICAgICAgICByZXNvbHZlKHRydWUpOw0KICAgICAgICAgIH0gY2F0Y2ggKGVycikgew0KICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpOw0KICAgICAgICAgICAgcmVqZWN0KGVycik7DQogICAgICAgICAgfQ0KICAgICAgICB9KTsNCiAgICAgIH0pOw0KICAgIH0sDQoNCiAgICAvLyDmibnph4/orr7nva7mn5DkuKpvcHRpb27nmoTlgLwNCiAgICBzZXRPcHRpb25zKGZpZWxkcywgb3B0aW9uTmFtZSwgdmFsdWUpIHsNCiAgICAgIGZpZWxkcyA9IG5ldyBTZXQoZmllbGRzKTsNCg0KICAgICAgLy8g6YCS5b2S6YGN5Y6G5o6n5Lu25qCRDQogICAgICBjb25zdCB0cmF2ZXJzZSA9IGFycmF5ID0+IHsNCiAgICAgICAgYXJyYXkuZm9yRWFjaChlbGVtZW50ID0+IHsNCiAgICAgICAgICBpZiAoZmllbGRzLmhhcyhlbGVtZW50Lm1vZGVsKSkgew0KICAgICAgICAgICAgdGhpcy4kc2V0KGVsZW1lbnQub3B0aW9ucywgb3B0aW9uTmFtZSwgdmFsdWUpOw0KICAgICAgICAgIH0NCiAgICAgICAgICBpZiAoZWxlbWVudC50eXBlID09PSAiZ3JpZCIgfHwgZWxlbWVudC50eXBlID09PSAidGFicyIpIHsNCiAgICAgICAgICAgIC8vIOagheagvOW4g+WxgCBhbmQg5qCH562+6aG1DQogICAgICAgICAgICBlbGVtZW50LmNvbHVtbnMuZm9yRWFjaChpdGVtID0+IHsNCiAgICAgICAgICAgICAgdHJhdmVyc2UoaXRlbS5saXN0KTsNCiAgICAgICAgICAgIH0pOw0KICAgICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudC50eXBlID09PSAiY2FyZCIgfHwgZWxlbWVudC50eXBlID09PSAiYmF0Y2giKSB7DQogICAgICAgICAgICAvLyDljaHniYfluIPlsYAgYW5kICDliqjmgIHooajmoLwNCiAgICAgICAgICAgIHRyYXZlcnNlKGVsZW1lbnQubGlzdCk7DQogICAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50LnR5cGUgPT09ICJ0YWJsZSIpIHsNCiAgICAgICAgICAgIC8vIOihqOagvOW4g+WxgA0KICAgICAgICAgICAgZWxlbWVudC50cnMuZm9yRWFjaChpdGVtID0+IHsNCiAgICAgICAgICAgICAgaXRlbS50ZHMuZm9yRWFjaCh2YWwgPT4gew0KICAgICAgICAgICAgICAgIHRyYXZlcnNlKHZhbC5saXN0KTsNCiAgICAgICAgICAgICAgfSk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgfTsNCiAgICAgIHRyYXZlcnNlKHRoaXMudmFsdWUubGlzdCk7DQogICAgfSwNCiAgICAvLyDpmpDol4/ooajljZXlrZfmrrUNCiAgICBoaWRlKGZpZWxkcykgew0KICAgICAgdGhpcy5zZXRPcHRpb25zKGZpZWxkcywgImhpZGRlbiIsIHRydWUpOw0KICAgIH0sDQogICAgLy8g5pi+56S66KGo5Y2V5a2X5q61DQogICAgc2hvdyhmaWVsZHMpIHsNCiAgICAgIHRoaXMuc2V0T3B0aW9ucyhmaWVsZHMsICJoaWRkZW4iLCBmYWxzZSk7DQogICAgfSwNCiAgICAvLyDnpoHnlKjooajljZXlrZfmrrUNCiAgICBkaXNhYmxlKGZpZWxkcykgew0KICAgICAgdGhpcy5zZXRPcHRpb25zKGZpZWxkcywgImRpc2FibGVkIiwgdHJ1ZSk7DQogICAgfSwNCiAgICAvLyDlkK/nlKjooajljZXlrZfmrrUNCiAgICBlbmFibGUoZmllbGRzKSB7DQogICAgICB0aGlzLnNldE9wdGlvbnMoZmllbGRzLCAiZGlzYWJsZWQiLCBmYWxzZSk7DQogICAgfSwNCiAgICBoYW5kbGVDaGFuZ2UodmFsdWUsIGtleSkgew0KICAgICAgLy8g6Kem5Y+RY2hhbmdl5LqL5Lu2DQogICAgICB0aGlzLiRlbWl0KCJjaGFuZ2UiLCB2YWx1ZSwga2V5KTsNCiAgICB9DQogIH0sDQogIG1vdW50ZWQoKSB7DQogICAgdGhpcy5zZXREYXRhKHRoaXMuZGVmYXVsdFZhbHVlKTsNCg0KICAgIC8vIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAvLyAgIHRoaXMuc2V0RGF0YSh0aGlzLmRlZmF1bHRWYWx1ZSk7DQogICAgLy8gfSk7DQogIH0sDQogIGNyZWF0ZWQoKSB7DQogICAgbGF6eUxvYWRUaWNrLnJlc2V0KCk7DQogIH0NCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"node_modules/k-form-design/packages/components/KFormBuild","sourcesContent":["<template>\r\n <a-config-provider :locale=\"locale\">\r\n <a-form\r\n v-bind=\"$attrs\"\r\n selfUpdate\r\n v-if=\"\r\n typeof value.list !== 'undefined' && typeof value.config !== 'undefined'\r\n \"\r\n class=\"k-form-build-9136076486841527\"\r\n :layout=\"value.config.layout\"\r\n :hideRequiredMark=\"value.config.hideRequiredMark\"\r\n :form=\"form\"\r\n @submit=\"handleSubmit\"\r\n :style=\"value.config.customStyle\"\r\n >\r\n <buildBlocks\r\n ref=\"buildBlocks\"\r\n @handleReset=\"reset\"\r\n v-for=\"(record, index) in value.list\"\r\n :record=\"record\"\r\n :dynamicData=\"getDynamicData\"\r\n :config=\"config\"\r\n :disabled=\"disabled\"\r\n :formConfig=\"value.config\"\r\n :validatorError=\"validatorError\"\r\n :key=\"index\"\r\n @change=\"handleChange\"\r\n />\r\n </a-form>\r\n </a-config-provider>\r\n</template>\r\n<script>\r\n/*\r\n * author kcz\r\n * date 2019-11-20\r\n * description 将json数据构建成表单\r\n */\r\nimport buildBlocks from \"./buildBlocks\";\r\nimport zhCN from \"ant-design-vue/lib/locale-provider/zh_CN\";\r\nimport { lazyLoadTick } from \"../../utils/index\";\r\n\r\nexport default {\r\n name: \"KFormBuild\",\r\n data() {\r\n return {\r\n locale: zhCN,\r\n form: this.$form.createForm(this),\r\n validatorError: {},\r\n defaultDynamicData: {}\r\n };\r\n },\r\n // props: [\"value\", \"dynamicData\"],\r\n props: {\r\n value: {\r\n type: Object,\r\n required: true\r\n },\r\n dynamicData: {\r\n type: Object,\r\n default: () => {\r\n return {};\r\n }\r\n },\r\n config: {\r\n type: Object,\r\n default: () => ({})\r\n },\r\n disabled: {\r\n type: Boolean,\r\n default: false\r\n },\r\n outputString: {\r\n type: Boolean,\r\n default: false\r\n },\r\n defaultValue: {\r\n type: Object,\r\n default: () => ({})\r\n }\r\n },\r\n components: {\r\n buildBlocks\r\n },\r\n computed: {\r\n getDynamicData() {\r\n return typeof this.dynamicData === \"object\" &&\r\n Object.keys(this.dynamicData).length\r\n ? this.dynamicData\r\n : window.$kfb_dynamicData || {};\r\n }\r\n },\r\n methods: {\r\n // moment,\r\n handleSubmit(e) {\r\n // 提交按钮触发,并触发submit函数,返回getData函数\r\n e.preventDefault();\r\n this.$emit(\"submit\", this.getData);\r\n },\r\n reset() {\r\n // 重置表单\r\n this.form.resetFields();\r\n },\r\n getData() {\r\n // 提交函数,提供父级组件调用\r\n return new Promise((resolve, reject) => {\r\n try {\r\n this.form.validateFields((err, values) => {\r\n if (err) {\r\n reject(err);\r\n /**\r\n * @author: lizhichao<meteoroc@outlook.com>\r\n * @Description: 多容器校验时,提供error返回给多容器进行判断。\r\n */\r\n this.validatorError = err;\r\n return;\r\n }\r\n this.validatorError = {};\r\n this.$refs.buildBlocks.forEach(item => {\r\n if (!item.validationSubform()) {\r\n reject(err);\r\n }\r\n });\r\n if (this.outputString) {\r\n // 需要所有value转成字符串\r\n for (const key in values) {\r\n const type = typeof values[key];\r\n if (type === \"string\" || type === \"undefined\") {\r\n continue;\r\n } else if (type === \"object\") {\r\n values[key] = `k-form-design#${type}#${JSON.stringify(\r\n values[key]\r\n )}`;\r\n } else {\r\n values[key] = `k-form-design#${type}#${String(values[key])}`;\r\n }\r\n }\r\n\r\n resolve(values);\r\n } else {\r\n resolve(values);\r\n }\r\n });\r\n } catch (err) {\r\n reject(err);\r\n }\r\n });\r\n },\r\n setData(json) {\r\n return new Promise((resolve, reject) => {\r\n lazyLoadTick.nextTick(() => {\r\n try {\r\n if (this.outputString) {\r\n // 将非string数据还原\r\n for (const key in json) {\r\n if (!json[key].startsWith(\"k-form-design#\")) {\r\n continue;\r\n }\r\n const array = json[key].split(\"#\");\r\n if (array[1] === \"object\") {\r\n json[key] = JSON.parse(array[2]);\r\n } else if (array[1] === \"number\") {\r\n json[key] = Number(array[2]);\r\n } else if (array[1] === \"boolean\") {\r\n json[key] = Boolean(array[2]);\r\n }\r\n }\r\n this.form.setFieldsValue(json);\r\n } else {\r\n this.form.setFieldsValue(json);\r\n }\r\n resolve(true);\r\n } catch (err) {\r\n console.error(err);\r\n reject(err);\r\n }\r\n });\r\n });\r\n },\r\n\r\n // 批量设置某个option的值\r\n setOptions(fields, optionName, value) {\r\n fields = new Set(fields);\r\n\r\n // 递归遍历控件树\r\n const traverse = array => {\r\n array.forEach(element => {\r\n if (fields.has(element.model)) {\r\n this.$set(element.options, optionName, value);\r\n }\r\n if (element.type === \"grid\" || element.type === \"tabs\") {\r\n // 栅格布局 and 标签页\r\n element.columns.forEach(item => {\r\n traverse(item.list);\r\n });\r\n } else if (element.type === \"card\" || element.type === \"batch\") {\r\n // 卡片布局 and 动态表格\r\n traverse(element.list);\r\n } else if (element.type === \"table\") {\r\n // 表格布局\r\n element.trs.forEach(item => {\r\n item.tds.forEach(val => {\r\n traverse(val.list);\r\n });\r\n });\r\n }\r\n });\r\n };\r\n traverse(this.value.list);\r\n },\r\n // 隐藏表单字段\r\n hide(fields) {\r\n this.setOptions(fields, \"hidden\", true);\r\n },\r\n // 显示表单字段\r\n show(fields) {\r\n this.setOptions(fields, \"hidden\", false);\r\n },\r\n // 禁用表单字段\r\n disable(fields) {\r\n this.setOptions(fields, \"disabled\", true);\r\n },\r\n // 启用表单字段\r\n enable(fields) {\r\n this.setOptions(fields, \"disabled\", false);\r\n },\r\n handleChange(value, key) {\r\n // 触发change事件\r\n this.$emit(\"change\", value, key);\r\n }\r\n },\r\n mounted() {\r\n this.setData(this.defaultValue);\r\n\r\n // this.$nextTick(() => {\r\n // this.setData(this.defaultValue);\r\n // });\r\n },\r\n created() {\r\n lazyLoadTick.reset();\r\n }\r\n};\r\n</script>\r\n"]}]}