// 校驗密碼 validateToNextPassword = (rule, value, callback) => { const { form } = this.props; // 校驗密碼強度 // 1. 必須同時包含大寫字母、小寫字母和數字,三種組合 // 2. 長度在8-30之間 const passwordReg = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$/; if (value) { if (!passwordReg.test(value)) { callback(intl.get('密碼必須同時包含大寫字母、小寫字母和數字')); } if (value.length < 8 || value.length > 30) { callback(intl.get('密碼長度8-30位')) } } callback(); }; // 確認密碼 compareToFirstPassword = (rule, value, callback) => { const { form } = this.props; if (value && value !== form.getFieldValue('passwordText')) { callback(intl.get('兩次密碼輸入不一致!')); } else { callback(); } };