长度限制
This commit is contained in:
parent
1b170f2bbc
commit
f186c37dd7
@ -656,36 +656,20 @@ export default function ProjNew() {
|
|||||||
rules={[
|
rules={[
|
||||||
{ required: true, message: '请输入系统全称' },
|
{ required: true, message: '请输入系统全称' },
|
||||||
{
|
{
|
||||||
validator: (_rule, value, callback) => {
|
max: 80,
|
||||||
if (value) {
|
message: '系统全称不能超过80个字符'
|
||||||
const modifiedValue = value.replace(/'/g, '');
|
|
||||||
if (value !== modifiedValue) {
|
|
||||||
// 更新表单值
|
|
||||||
form.setFieldsValue({ projName: modifiedValue });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
callback();
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
pattern: /^[^']*$/, // 正则表达式:不包含任何英文单引号
|
||||||
|
message: '系统全称禁止使用英文单引号(\')'
|
||||||
|
}
|
||||||
|
|
||||||
]}
|
]}
|
||||||
|
// normalize={(value) => value?.replace(/'/g, '') || ''}
|
||||||
|
// normalize={(value) => value?.replace(/['"]/g, '') || ''}
|
||||||
|
|
||||||
>
|
>
|
||||||
|
|
||||||
{/* <Input onChange={(e) => {
|
|
||||||
// 打印值
|
|
||||||
// console.log(e.target.value);
|
|
||||||
if (e.target.value) {
|
|
||||||
if (isEndsWithKeywords(e.target.value)) {
|
|
||||||
setShowTip(false)
|
|
||||||
} else {
|
|
||||||
setShowTip(true)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
setShowTip(false)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}} style={{ background: '#eeeeee', width: '800px', height: '50px', fontSize: '16px' }} placeholder="请输入系统全称 (注:系统全称建议以“软件”、“系统”、“平台”或“APP”结尾)" /> */}
|
|
||||||
|
|
||||||
<AutoComplete
|
<AutoComplete
|
||||||
|
|
||||||
className='changeStyle'
|
className='changeStyle'
|
||||||
@ -696,17 +680,20 @@ export default function ProjNew() {
|
|||||||
width: '780px',
|
width: '780px',
|
||||||
height: '42px',
|
height: '42px',
|
||||||
}}
|
}}
|
||||||
placeholder="请输入系统全称 (注:系统全称建议以“软件”、“系统”、“平台”或“APP”结尾,禁止使用英文单引号)"
|
placeholder="请输入系统全称 (注:系统全称建议以“软件”、“系统”、“平台”或“APP”结尾)"
|
||||||
options={selectList}
|
options={selectList}
|
||||||
onSearch={(value) => {
|
onSearch={(value) => {
|
||||||
// setProjNameValue(value);
|
// setProjNameValue(value);
|
||||||
if (value) {
|
// 先检查基础规则是否通过
|
||||||
if (isEndsWithKeywords(value)) {
|
const isBasicValid = value
|
||||||
setShowTip(false);
|
&& value.length <= 80
|
||||||
} else {
|
&& !/'/.test(value);
|
||||||
setShowTip(true);
|
|
||||||
}
|
if (isBasicValid) {
|
||||||
|
// 基础规则通过后,再检查尾部关键词
|
||||||
|
setShowTip(!isEndsWithKeywords(value));
|
||||||
} else {
|
} else {
|
||||||
|
// 基础规则未通过,不显示尾部提示
|
||||||
setShowTip(false);
|
setShowTip(false);
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
@ -775,6 +762,21 @@ export default function ProjNew() {
|
|||||||
name="projSubName"
|
name="projSubName"
|
||||||
rules={[
|
rules={[
|
||||||
{ required: false, message: '请输入系统简称' },
|
{ required: false, message: '请输入系统简称' },
|
||||||
|
{
|
||||||
|
validator: async (_, value) => {
|
||||||
|
// 获取系统全称的值
|
||||||
|
const projName = await form.getFieldValue('projName');
|
||||||
|
|
||||||
|
// 如果系统简称和全称都存在,验证长度
|
||||||
|
if (value && projName) {
|
||||||
|
if (value.length > projName.length) {
|
||||||
|
return Promise.reject(new Error('系统简称长度不能大于系统全称'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
]}
|
]}
|
||||||
>
|
>
|
||||||
<Input
|
<Input
|
||||||
|
Loading…
Reference in New Issue
Block a user