diff --git a/src/views/trials/trials-panel/setting/email-manage/index.vue b/src/views/trials/trials-panel/setting/email-manage/index.vue
index 8415ab25..6a452ed4 100644
--- a/src/views/trials/trials-panel/setting/email-manage/index.vue
+++ b/src/views/trials/trials-panel/setting/email-manage/index.vue
@@ -46,21 +46,7 @@
:label="$t('trials:emailManageCfg:title:SMTPServerPort')"
prop="EmailSMTPServerPort"
>
-
-
- 465
-
-
- 25
-
-
+
@@ -134,7 +120,27 @@ export default {
EmailFromName: [{ required: true, message: this.$t('common:ruleMessage:specify') }],
EmailAuthorizationCode: [{ required: true, message: this.$t('common:ruleMessage:specify') }],
EmailSMTPServerAddress: [{ required: true, message: this.$t('common:ruleMessage:specify') }],
- EmailSMTPServerPort: [{ required: true, message: this.$t('common:ruleMessage:select') }]
+ EmailSMTPServerPort: [{ required: true, message: this.$t('common:ruleMessage:specify') },{
+ type: "number",
+ min: 1,
+ max: 65535,
+ message: this.$t("common:ruleMessage:portPattern"),
+ trigger: "blur",
+ },
+ {
+ validator: (rule, value, callback) => {
+ if (
+ value &&
+ (String(value).includes(".") ||
+ new RegExp(/\D/g).test(String(value)))
+ ) {
+ callback(new Error(this.$t("common:ruleMessage:portPattern")));
+ } else {
+ callback();
+ }
+ },
+ trigger: "blur",
+ },]
},
NODE_ENV: process.env.NODE_ENV,
}