|
@@ -133,3 +133,55 @@ function disableHandler(list) {
|
|
|
}
|
|
|
|
|
|
|
|
|
+// 递归移除表单校验
|
|
|
+export function removeValidate(jsonData = {}) {
|
|
|
+ if (!jsonData.list || !jsonData.list.length) return {};
|
|
|
+ removeValidateHandler(jsonData.list);
|
|
|
+ return jsonData;
|
|
|
+}
|
|
|
+
|
|
|
+function removeValidateHandler(list) {
|
|
|
+ if (!list.length) return;
|
|
|
+ list.forEach((item) => {
|
|
|
+ if (isWrapItem(item)) { //递归处理保函类型的type
|
|
|
+ switch (item.type) {
|
|
|
+ case 'table':
|
|
|
+ item.trs.forEach((n) => {
|
|
|
+ n.tds.forEach((m) => {
|
|
|
+ removeValidateHandler(m.list);
|
|
|
+ });
|
|
|
+ });
|
|
|
+ break;
|
|
|
+ case "grid":
|
|
|
+ item.columns.forEach((n) => {
|
|
|
+ removeValidateHandler(n.list);
|
|
|
+ });
|
|
|
+ break;
|
|
|
+ case "tabs":
|
|
|
+ item.columns.forEach((n) => {
|
|
|
+ removeValidateHandler(n.list);
|
|
|
+ });
|
|
|
+ break;
|
|
|
+ case "card":
|
|
|
+ removeValidateHandler(item.list);
|
|
|
+ break;
|
|
|
+ case "batch"://动态表格
|
|
|
+ removeValidateHandler(item.list);
|
|
|
+ break;
|
|
|
+ case "selectInputList": //选项输入列
|
|
|
+ item.columns.forEach((n) => {
|
|
|
+ removeValidateHandler(n.list);
|
|
|
+ });
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ } else if (isShowItem(item)) { //跳过仅展示类型
|
|
|
+ return;
|
|
|
+ } else {
|
|
|
+ item.rules = [];
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+
|