From f56e474c81bb25845b46cf99c85bd313dbfcd3b5 Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期六, 31 一月 2026 19:26:25 +0800
Subject: [PATCH] 项目初始化+首页+公告详情页面
---
src/utils/ruleGenerator.js | 97 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 97 insertions(+), 0 deletions(-)
diff --git a/src/utils/ruleGenerator.js b/src/utils/ruleGenerator.js
new file mode 100644
index 0000000..a7a9c7a
--- /dev/null
+++ b/src/utils/ruleGenerator.js
@@ -0,0 +1,97 @@
+//琛ㄥ崟鏍¢獙瑙勫垯
+
+export const ruleGenerator = {
+ // 蹇呭~瀛楁
+ required(message = '姝ゅ瓧娈典负蹇呭~椤�') {
+ return { required: true, message, trigger: 'blur' }
+ },
+
+ // 闀垮害闄愬埗
+ length(min, max, fieldName = '') {
+ const message = fieldName
+ ? `${fieldName}闀垮害搴斿湪${min}鍒�${max}涓瓧绗︿箣闂碻
+ : `闀垮害搴斿湪${min}鍒�${max}涓瓧绗︿箣闂碻
+
+ return {
+ validator: (rule, value, callback) => {
+ if (!value || (value.length >= min && value.length <= max)) {
+ callback()
+ } else {
+ callback(new Error(message))
+ }
+ },
+ trigger: 'blur'
+ }
+ },
+
+ // 鎵嬫満鍙烽獙璇�
+ phone() {
+ return {
+ validator: (rule, value, callback) => {
+ const reg = /^1[3-9]\d{9}$/
+ if (!value || reg.test(value)) {
+ callback()
+ } else {
+ callback(new Error('璇疯緭鍏ユ纭殑鎵嬫満鍙风爜'))
+ }
+ },
+ trigger: ['blur', 'change']
+ }
+ },
+ //楠岃瘉鐮侀獙璇�
+ code() {
+ return {
+ validator: (rule, value, callback) => {
+ const reg = /^\d{4}$/
+ if (!value || reg.test(value)) {
+ callback()
+ } else {
+ callback(new Error('璇疯緭鍏ユ纭殑楠岃瘉鐮�'))
+ }
+ },
+ trigger: ['blur', 'change']
+ }
+ },
+ password() {
+ return {
+ validator: (rule, value, callback) => {
+ const reg = /^\d{6}$/
+ if (!value || reg.test(value)) {
+ callback()
+ } else {
+ callback(new Error('瀵嗙爜鏍煎紡涓�6涓瓧绗�'))
+ }
+ },
+ trigger: ['blur', 'change']
+ }
+ },
+
+ // 澶氶�夋楠岃瘉
+ checkbox(message) {
+ return {
+ validator: (rule, value, callback) => {
+ if (!value) {
+ callback(new Error(message));
+ } else {
+ callback();
+ }
+ },
+ trigger: 'change'
+ }
+ },
+
+ // 閭楠岃瘉
+ email() {
+ return {
+ validator: (rule, value, callback) => {
+ const reg = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/
+ if (!value || reg.test(value)) {
+ callback()
+ } else {
+ callback(new Error('璇疯緭鍏ユ纭殑閭鍦板潃'))
+ }
+ },
+ trigger: 'blur'
+ }
+ }
+}
\ No newline at end of file
--
Gitblit v1.8.0