huangxutao 6 anni fa
parent
commit
55a03ea0a3
2 ha cambiato i file con 40 aggiunte e 19 eliminazioni
  1. 5 19
      src/const/crud/admin/sys-public-param.js
  2. 35 0
      src/util/validateRules.js

+ 5 - 19
src/const/crud/admin/sys-public-param.js

@@ -15,24 +15,9 @@
  * Author: lengleng (wangiegie@gmail.com)
  */
 
+import { rule } from "@/util/validateRules";
 export const tableOption = {
-  border: true,
-  index: true,
-  indexLabel: '序号',
-  stripe: true,
-  menuAlign: 'center',
-  menuWidth: 150,
-  align: 'center',
-  refreshBtn: true,
-  showClomnuBtn: false,
-  searchSize: 'mini',
-  editBtn: true,
-  delBtn: true,
-  addBtn: true,
-  props: {
-    label: 'label',
-    value: 'value'
-  },
+  // 省略 ...
   column: [
     {
       label: '名称',
@@ -40,7 +25,7 @@ export const tableOption = {
       prop: 'publicName',
       rules: [
         { min: 6, max: 30, message: '长度在 6 到 30 个字符', trigger: 'blur' },
-        { pattern: /^[\u4E00-\u9FA5A-Za-z0-9_]+$/, message: '请输入中文、英文、数字包括下划线', trigger: 'blur' }
+        { validator: rule.validatorNameCn, trigger: 'blur'}
       ]
     },
     {
@@ -48,7 +33,7 @@ export const tableOption = {
       prop: 'publicKey',
       rules: [
         { required: true, message: '请输入键', trigger: 'blur' },
-        { pattern: /^[A-Z_]+$/, message: '请输入大写英文、下划线', trigger: 'blur' }
+        { validator: rule.validatorKey, trigger: 'blur'}
       ]
 
     },
@@ -92,5 +77,6 @@ export const tableOption = {
         trigger: 'blur'
       }]
     }
+    // 省略 ...
   ]
 }

+ 35 - 0
src/util/validateRules.js

@@ -0,0 +1,35 @@
+/**
+ * @desc  [自定义校验规则]
+ * @example
+ *  import { validateRule } from "@/utils/validateRules";
+ *  rules: [
+ *     { validator: validateRule.emailValue, trigger: 'blur'}
+ *  ]
+ */
+
+export const rule = {
+  /**
+   * 校验 请输入中文、英文、数字包括下划线
+   * 名称校验
+   */
+  validatorNameCn(rule, value, callback) {
+    let acount = /^[\u4E00-\u9FA5A-Za-z0-9_]+$/
+    if (value && (!(acount).test(value))) {
+      callback(new Error('请输入中文、英文、数字包括下划线'))
+    } else {
+      callback()
+    }
+  },
+  /**
+   * 校验 请输入中文、英文、数字包括下划线
+   * 名称校验
+   */
+  validatorKey(rule, value, callback) {
+    let acount = /^[A-Z_]+$/
+    if (value && (!(acount).test(value))) {
+      callback(new Error('请输入大写英文、下划线'))
+    } else {
+      callback()
+    }
+  },
+}